美文网首页
JS严格模式下常见问题

JS严格模式下常见问题

作者: 砺剑锋成 | 来源:发表于2018-08-22 16:10 被阅读0次

    开启严格模式(”use strict”):

    1. SyntaxError: Duplicate data property in object literal not allowed in strict mode.
    原因:
    在对象中声明相同的属性名
    
    例如:
    var obj ={ 
    ‘name’: 1, 
    ‘name’: 2 
    };
    
    1. SyntaxError: Strict mode function may not have duplicate parameter names .
    原因:
    在函数声明中相同的参数名
    
    例如:
    function fix(a,b,a) {     
         return a+b;     
     }
    
    1. SyntaxError: Octal literals are not allowed in strict mode.
    原因:
    不能用前导0声明8进制直接量
    
    例如:
     var a = 012;
    
    1. SyntaxError: Assignment to eval or arguments is not allowed in strict mode
    原因:
    不能重新声明、删除或重写eval和arguments这两个标示符
    
    例如:
    var eval = ……;
    
    1. SyntaxError: Delete of an unqualified identifier in strict mode.
    原因:
    用delete删除显示声明的标识符、名称和具名函数
    
    例如:
    function temp() { 
     ‘use strict’; 
     var test = 1; 
     delete test; 
    }
    
    1. SyntaxError: Unexpected strict mode reserved word
    原因:代码中使用扩展的保留字,例如 interface,let,yield,package,private等
    

    7.SyntaxError: Strict mode code may not include a with statement

    原因:严格模式下是禁止使用with的
    

    相关文章

      网友评论

          本文标题:JS严格模式下常见问题

          本文链接:https://www.haomeiwen.com/subject/wdjyiftx.html