浏览器基于es3.0的+es5.0的新增方法 使用的
如果产生冲突默认选es3.0
怎么要用es5.0呢?
es5.0的严格模式 那么es3.0和es5.0产生冲突的部分就是用es5.0 否则s会用3.0
"use strict";//es5.0严格模式的启动
不再兼容es3的一些不规则语法.使用全新的es5规范.
两种用法:
全局严格模式
局部函数内严格模式(推荐)
就是一行字符串,不会对兼容模式的浏览器产生影响
不支持with,arguments.callee,func.caller,变量赋值前必须声明,局部this必须被赋值(person.call(null/undefined)赋值什么就是什么),拒绝重复属性和参数
function test(){
console.log(arguments.callee());
}
test();
eval();//可以识别字符串代码
with(document){
write('a');
}
with会修改作用域链,会导致效率低
网友评论