1:对象只能和自己相等。甚至两个空对象都不相等。
2:基本类型都是不可以添加属性的。
3:利用arr.length可以做出很多精彩的操作。
4:typeOf ,instanceOf 分别是用来检测基本变量和对象的属性的。
5:typeOf {}:object,typeOf undefined:undefined,typeOf null:object,typeOf true boolean.
6:Boolean()是一个用来测试真假的函数,只会返回布尔值。Boolean({}),Boolean([]),返回true。表示里面有0个元素这是对的。。
7:Js中所有的数字都是浮点数。1===1.000。
8:函数声明具有提升的特性,这意味着我们可以用到下面定义的函数,但是var 声明的变量,只会提升变量的位置,而不会去管他的值得位置在哪。
9:数组可以有自己的属性,因为他本质上是一个对象。
10:在使用this的时候可以把不同层次的this保存起来就不会出现this指代不明的情况了。
11:立即执行函数可以使防止全局变量的出现。
12:闭包会持续的与内部变量连接,但是有的时候我们可能不需要这个东西.
13:数组当中可以添加对象,对象中也可以添加数组。
14:通过【】或是“.”来应用对象属性或数组元素的值来构成一个表达式。
15:用var 定义的变量,成为该定义域内的局部变量,这个变量在退出取得时候就会立刻被销毁
16:表示输入的最大和最小值,每个字母都是大写或者小写的。
17:不同类型之间加减号操作引发强制转换。
18:速度永远让人兴奋。
19:在编写dom脚本的时候,你会想当然的认为这个是dom元素节点,这是一种常见的错误,可以查看这个元素的nodeType属性,许多只能在元素节点的方法,是不能用在文本节点的。
20:函数名字命名的时候:getresult. isShow.
当需要引出对象内的函数,他所指的对象可能会发生变化,这个时候需要给他加个bind(此处是原来的对象名字);让他找到回家的路就可以了。
var result=[];
for(var I=0;i<6;i++){
result[I]=i........result.push(i);都可以的。
result.push(function(){return I;}) 返回的都是空函数为什么?但是只要把这个变成立即执行函数就可以了。。
}
function pair(x,y){x=x||0;y=y||0;return [x,y];}
pair():[0,0]
利用这个特性可以做到自动填充东西。可以给他后面加上数组。就可以填充名字了。