- 变量提升
- 当你下面使用var的时候会出现变量提升的情况
- 已经声明但是没有赋值,给了一个初始值叫undefined;
- 函数是一等公民
- 声明的function会提升函数到最前面
- 页面一加载的时候会先找有没有 var 和 function
- 如果发现有var 就会把变量预定义为undefined如果发现有function 就会把function这个方法放在最前面
- NaN not a number 表示不是一个数字
- 使用isNaN方法来判断 是不是一个数字
- 如果不是数字 就返回 true
- 是数字就返回 false
- 全局变量在页面关闭后被删除
- 在函数里面没有使用let 或者 vara会变成一个全局变量局部变量:在函数内部声明的变量(必须使用var只能在函数内部访问它
- 可以在不同的函数中使用名称相同的局部变量
- 局部变量在函数运行以后被删除
- 作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期
- 变量的作用域有两种全局作用域 局部作用域
- 作用域链 首先会在当前的作用域内去变量对应的值
- 如果找不到,会向上一层一层的去寻找