您的位置:首页 > Web前端 > JavaScript

js(javascript)中的严格模式解析

2017-03-09 09:06 387 查看
<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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  js严格模式