JS学习笔记(持续更新)

所有内容摘自  廖雪峰的js教程,本文只是针对个人薄弱地方进行的总结。

1,NaN 表示Not a Number ,当无法计算结果时用NaN表示

Infinity 表示无限大

2,由于JavaScript这个设计缺陷,不要使用==比较,始终坚持使用===比较。

另一个例外是NaN这个特殊的Number与所有其他值都不相等,包括它自己:

NaN === NaN;  是false。唯一判断NaN的方法是  isNaN() 函数

3,null 表示一个“空”值,undefined表示值未定义,一般情况下用null

4,'use strict';  如果对变量未用var声明,程序就会运行报错

5,Map:键值对

Set:没有重复的Array

6,for...of 是对 for...in 的修复,for...in 实际上遍历的是对象的属性名称,会有误差,而for...of不会,只循环集合本身的元素

7,arguments 是javaScript免费赠送的字段,它只在函数内部起作用,并且永远指向当前函数的调用者传入的所有参数。类似一个Array但其实不是一个Array。实际上arguments最常用于判断传入参数的个数:

argunments.length 

8,rest 是获取到定义外的额外参数。rest参数只能写在最后,前面用...标识,从运行结果可知,传入的参数先绑定a、b,多余的参数以数组形式交给变量rest,所以,不再需要arguments我们就获取了全部参数。

functionfoo(a, b, ...rest)

9,JavaScript引擎有一个在行末自动添加分号的机制,所以return 后面如果有返回的参数一定要在当前行‘ {’     如果在return的后面换行再加‘{’  ,可能会造成直接return;的情况

推荐阅读更多精彩内容