JavaScript权威指南笔记 - 2

1. var a = b = 123; 等价于var a = 123; b = 123;
注意在这行代码中产生了全局变量b(之前未声明b的情况下)

2. for(var i = 0; i < jsArray.length; i ++){}
在这个循环中, 每次循环都会访问jsArray对象的length属性, 所以降低了代码的效率, 尤其是在jsArray还是dom对象的时候, 提前把length保存到一个变量中。

3. for...in...循环中,遍历的顺序不能保证! 而且只能遍历可序列话的变量。

4. hasOwnProperty(p) 用来判断p是不是一个对象的私有属性,而不是原型中的属性。

5. parseInt(x, y):y是按按进制来转换数字。

6. function x(){}// x.name -> "x"
    var x = function(){}// x.name -> ""
    var x = function y(){}// x.name -> "y"

7. lvalue:在JS中能出现在赋值号左侧的值。

8. delete操作只能作用在lvalue上,如delete 1; 返回true但没有任何操作发生。只删除自由属性, 不会删除继承来的属性。

9. for(var x in "abc"){console.log(x)}// 该循环输出1, 2, 3。

10. for(a[i++] in object)//把object的属性复制到a数组。

11. break后面加statement label,用于跳出不是最近的循环或switch。

12. catch(e){},e的作用域只是在catch中。

13. try中有break,continue,return时, 在跳出前会执行finally块!

14. debugger可以在代码中出发断点。

15. 对象的键值可以是空:x[""] = 123;

16. {}构建对象时,末尾的,会忽略,IE除外,会报错。

17. ES3中若对象的属性名是保留字,只能用[]来取不能用.。

18. [, ,]末尾的,是忽略的,所以该数组长度是2。

19. a[-123] = 123;等价于a["-123"] = 123;
      a["100"] = 123;等价于a[100] = 123;
      a[1.00] = 123;等价于a[1] = 123;

20. JS数组没有超出界限的错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值