NaN:表示不是数字 undefined:未初始化
表达式: ==:不严格的判等 “10” == 10 true ===:严格的判等 “10”===10 false !== !===
switch 语句中 用的是严格的判等
声明方式:
var array = new Array(); // 空数组 var array = new Array(10); // 内容为undefined var array = new array(10,20,30); //number数组 var array = []; //空数组 var array = [10,20,30]; //number数组数组长度可以改变
var array = []; //声明一个空数组 var array[0] = 10; //往里面添加元素 var array[1] = 20; console.log(array.length) //数组长度改变普通同名函数,后定义的函数会覆盖前面的函数,而函数表达式和变量赋值类似。 4. 函数自调用
(function () { console.log("aaaa") })(); 函数作为参数使用: function f1(f2) { f2(); console.log("bbbb"); } function f2() { console.log("aaaa"); } f1(f2); 函数作为返回值使用 function f1() { return function () { console.log("aaaa"); } } var ff = f1(); ff();总结: 函数名的本质就是函数体。 函数的数据类型是function。
js代码会预先声明变量,只要变量被声明,无论变量在什么位置,解释器会提前声明, 函数会调整顺序,无论函数体在什么位置,只要有这个函数,就能被整确调用。
注意
var num = 1; function f1() { //隐式的var num; console.log(num); //此结果仍然是undefined 因为js会预解析 var num = 20; } f1();