关于javascript严格模式下七种禁止使用的写法
2015-01-23 14:50
495 查看
分享至javascript语言精髓与编程实践
开启严格模式(”use strict"):
在全局代码的开始处加入
在eval代码的开始处加入
在函数声明代码处加入
在new Function() 所传入的body参数块开始处加入
1:在对象中声明相同的属性名
例如: var obj ={
'name': 1,
'name': 2
};
会抛出SyntaxError: Duplicate data property in object literal not allowed in strict mode.
2:在函数声明中相同的参数名
例如: "use strict";
function fix(a,b,a) {
return a+b;
}
会抛出 SyntaxError: Strict mode function may not have duplicate parameter names .
3:不能用前导0声明8进制直接量
例如: var a = 012;
会抛出 SyntaxError: Octal literals are not allowed in strict mode.
4: 不能重新声明、删除或重写eval和arguments这两个标示符
var eval = ......;
会抛出 SyntaxError: Assignment to eval or arguments is not allowed in strict mode
5:用delete删除显示声明的标识符、名称和具名函数
function temp() {
'use strict';
var test = 1;
delete test;
}
会抛出 SyntaxError: Delete of an unqualified identifier in strict mode.
6.代码中使用扩展的保留字,例如 interface,let,yield,package,private等
会抛出SyntaxError: Unexpected strict mode reserved word
7.严格模式下是禁止使用with的
会抛出 SyntaxError: Strict mode code may not include a with statement
开启严格模式(”use strict"):
在全局代码的开始处加入
在eval代码的开始处加入
在函数声明代码处加入
在new Function() 所传入的body参数块开始处加入
1:在对象中声明相同的属性名
例如: var obj ={
'name': 1,
'name': 2
};
会抛出SyntaxError: Duplicate data property in object literal not allowed in strict mode.
2:在函数声明中相同的参数名
例如: "use strict";
function fix(a,b,a) {
return a+b;
}
会抛出 SyntaxError: Strict mode function may not have duplicate parameter names .
3:不能用前导0声明8进制直接量
例如: var a = 012;
会抛出 SyntaxError: Octal literals are not allowed in strict mode.
4: 不能重新声明、删除或重写eval和arguments这两个标示符
var eval = ......;
会抛出 SyntaxError: Assignment to eval or arguments is not allowed in strict mode
5:用delete删除显示声明的标识符、名称和具名函数
function temp() {
'use strict';
var test = 1;
delete test;
}
会抛出 SyntaxError: Delete of an unqualified identifier in strict mode.
6.代码中使用扩展的保留字,例如 interface,let,yield,package,private等
会抛出SyntaxError: Unexpected strict mode reserved word
7.严格模式下是禁止使用with的
会抛出 SyntaxError: Strict mode code may not include a with statement
相关文章推荐
- 关于javascript严格模式下七种禁止使用的写法
- 关于javascript严格模式下七种禁止使用的写法
- 是时候开始使用JavaScript严格模式了
- JavaScript严格模式下关于this的几种指向详解
- 是时候开始使用JavaScript严格模式了
- 是时候使用Javascript严格模式了
- JavaScript严格模式及其使用
- javascript_tooltip插件_面向对象的写法(没有使用单例模式)
- 是时候开始使用JavaScript严格模式了怎样启用javascri
- JavaScript各类参考手册+调试+严格模式+使用误区
- JavaScript进阶【二】JavaScript 严格模式(use strict)的使用
- 关于Javascript的严格模式
- 关于document.cookie的使用javascript
- IE8"开发人员工具"使用详解下(浏览器模式、文本模式、JavaScript调试、探查器)
- 关于在普通宽带路由器下设定FTP服务器使用被动模式传输
- IE8″开发人员工具”使用详解下(浏览器模式、文本模式、JavaScript调试、探查器)
- 使用javascript禁止浏览器使用刷新及前进后退
- 关于如何使用策略禁止USB的问题
- 关于document.cookie的使用javascript
- 关于Javascript定义函数和this使用的两点注意的地方