<script> //开启严格模式 "use strict";//在不支持ES5的浏览器中没有作用,也不会报错 //1、禁止使用隐式全局变量-->某个变量未声明就直接赋值// num=100;//num is not defined //2、禁止使用caller/callee// function fn(){// fn.caller// }// fn();// function fn2(){// arguments.callee// }// fn2(); //3、在eval函数中声明的变量已经是作用域内的局部变量了// eval("var num=10;console.log(num);");//打印10// console.log(num);//num is not defined //4、对于一些禁止删除的属性,如果尝试删除该属性,报错 var obj={}; Object.defineProperty(obj,"name",{ configurable:false, value:"taoge" });//name是一个不可被删除的属性 delete obj.name;</script>