最赞回答 / 葛乌
错了!!对于第三点,当对象用defineProperty这种方式定义属性时。且writable为false。该对象的子对象也是不可写的,所以你的obj.value再怎么更改也是1、除非你用defineProperty再去定义obj中的value属性,视频中的最后几分钟的例子就是在说明这个!!请再回去仔细看看!!
2016-03-21
关于严格模式:
1.with语句会抛错误
2.未声明的变量被赋值会报错
3.arguments在严格模式下变为静态,传入的参数与arguments无关系
4.delete会报错
5.对象的重复属性名会报错
6.禁止八进制变量
7.eval被认定为关键字,另外eval的参数中若有定义变量的语句,在严格模式下只是一段平凡的字符串,使用typeof检测不到在eval里定义的变量类型
1.with语句会抛错误
2.未声明的变量被赋值会报错
3.arguments在严格模式下变为静态,传入的参数与arguments无关系
4.delete会报错
5.对象的重复属性名会报错
6.禁止八进制变量
7.eval被认定为关键字,另外eval的参数中若有定义变量的语句,在严格模式下只是一段平凡的字符串,使用typeof检测不到在eval里定义的变量类型
2016-03-21