Node.js性能高,它使用JavaScript是因为JavaScript支持第一类函数和闭包。Node.js有一些核心类型:number,boolean,string和object。
undefined值意味着值尚未设置或根本不存在:
var x; console.log(x);
上面的代码生成以下结果。
Null空值
null是一个明确的断言,即“没有值”:
var y; console.log(y); y = null ; console.log(y);
上面的代码生成以下结果。
typeof
要查看JavaScript中任何内容的类型,请使用 typeof
运算符:
console.log(typeof 10); console.log(typeof "hello"); console.log(typeof function () { var x = 20; });
上面的代码生成以下结果。
常量
标准做法是使用大写字母和变量声明:
var SECONDS_PER_DAY = 86400; console.log(SECONDS_PER_DAY);
类型比较和转换
JavaScript同时具有等于运算符“==”和精确等于运算符“===”。
console.log(234 == "234"); console.log(234 === "234"); console.log(234234.235235 == "cat"); console.log("cat" == "CAT"); console.log("cat".toUpperCase() == "CAT");
上面的代码生成以下结果。
许多不同的值求值为false。
console.log("" == false == null == undefined == 0); console.log(null === undefined);
检查函数的参数:
function fine(param) { if (param == null || param == undefined || param == "") throw new Error("Invalid Argument"); } function better(param) { if (!param) throw new Error("Invalid Argument"); }
更加需要注意原始包装。
var x = 234;var x1 = new Number(234); console.log(typeof x); console.log(typeof x); console.log(x1 == x); console.log(x1 === x);
上面的代码生成以下结果。