1.parseInt("abc") ===> NaN 不是一个数字
isNaN() 用于检查其参数是否是非数字 不是数字 返回true 是数字 返回false
isNaN('123') 会把字符串123转成数字123 来进行校验 返回 false
没办法转换成数字时显示true
2.调用函数的两种方式
3.传递参数的两种方式
4.全局变量的作用域 在全局中都能被访问
全局变量:在函数外声明的变量,网页上的所有脚本和函数都能访问它
生存期 全局变量在页面关闭后被删除
定义在函数外部就属于全局变量
5.局部变量的作用域 只能在函数内部被访问
局部变量 const用来定义常量
可以在不同的函数中使用名称相同的局部变量
如果不使用var或let或const来定义一下,就会变成全局变量
6.return返回值
函数通过return将值返回调用它的地方
使用 return 时,函数会停止执行,并返回指定的值 后面的代码就不会执行了
7.系统给默认的全局的对象 window
8.末定义直接赋值的变量自动声明为拥有全局作用域
9.最外层函数和在最外层函数外面定义的变量拥有全局作用域
局部作用域一般只在固定的代码片段内可访问到
10.作用域链 先从当前寻找,如果找不到就会一层一层向上寻找,直到找到,如果一直向上寻找也找不到,就会报错 就近原则
11.闭包
一个函数就是一个闭包
我们的目的是为了获得 函数内部的局部变量
- 闭包的缺点 闭包会在父函数外部,改变父函数内部变量的值
会产生垃圾,带来性能问题 不能滥用闭包。