JavaScript The Good Parts阅读笔记
提炼了一些
Awful Parts
Global Variables
三种方式会创建全局变量:12345var foo = value; // 在任何函数外声明的变量 window.foo = value; // 直接写在window上的变量boo = value // 没有声明就赋值的变量
Scope
明明没有block作用域却使用block的语法。
所以最好在函数的一开始来声明所有变量。
分号
javascript会尝试自动给程序加分号,但这会导致一些问题。1234return //这回导致return后面自动加上分号,以至于返回undefined{ status: true};
保留字
保留字作为属性名时必须加引号
浮点数
浮点数计算10.1 + 0.2 === 0.3 // false
将浮点数放大到整数来计算
NaN
|
|
可以转换成false的值
Value | Type |
---|---|
0 | Number |
NaN | Number |
‘’ | String |
false | Boolean |
null | Object |
undefined | Undefined |
Function
function foo() {}
与
var foo = function foo() {};
是同一种表达
函数声明遵守变量提升标准。无论函数在哪声明的,他都会被放到scope中的顶端。