现在浏览器的js方法是基于es3.0 + es5.0的新增方法使用的
es3.0和es5.0产生冲突的部分叫做es5.0的严格模式
一旦启动了es5.0的严格模式,那么es3.0和es5.0产生冲突的部分就会使用es5.0的处理方法
es5.0的启动模式,并且在代码的最上面(可以使用在函数当中,但是也必须要写在顶端,否则无法识别),推荐使用在函数中
'use strict'


在es3.0里面可以使用arguments.callee,但是es5.0就不能使用了
不允许使用的方法:
with(){}


with(参数){},会将参数插入到其作用域链的最顶端
caller,callee,arguments也都不能使用
变量赋值前必须声明


局部的this必须要赋值,全局的this指向window


es5不允许重复的属性和参数
es3


es5


eval() ,能把字符串当做代码来作用


但是别使用eval,es3也别使用,会根据不同的情况改变作用域(太恐怖了,eval is 魔鬼)
博客介绍了浏览器中JS方法基于ES3.0和ES5.0新增方法使用,阐述了ES5.0严格模式,即ES3.0和ES5.0冲突部分的处理方式。还说明了ES5.0启动模式位置,列举了ES5.0不允许使用的方法,如with、caller等,同时提醒不要使用eval。
225

被折叠的 条评论
为什么被折叠?



