浅谈js严格模式 use strict
来源:互联网 发布:软件翻译公司 编辑:程序博客网 时间:2024/06/05 11:53
严格模式是一种特殊的运行模式,它修复了部分语言上的不足,提供更强的错误检查,并增强安全性
"use strict":
1.不允许使用with语法
2.所有变量必须声明,不然赋值给未声明的变量会报错,而不是隐式声明全局变量
3.通过eval方法创建的变量,将被分为独立的作用于,外部代码不能访问
4.函数中的特殊对象arguments将为静态副本,不能与函数参数相互影响,无法修改参数
5.若使用call\apply传入null或undefined修改this时,this指向null或undefined,而不是window
6.禁止八进制字面量,如console.log(0123)等
7.eval\arguments等变为关键字,不能被使用作为变量名
8.一般函数(除对象调用的函数,或被bind\apply\call等修改过this的函数)调用时this指向null,而不是指向window
9.试图删除对象属性描述器configurable=false的属性时报错,而不是返回false或忽略
10.试图修改不可写属性(writable=false)时,报错而不是返回false或忽略。
11.arguments.caller\arguments.callee被禁用。
"use strict":
1.不允许使用with语法
2.所有变量必须声明,不然赋值给未声明的变量会报错,而不是隐式声明全局变量
3.通过eval方法创建的变量,将被分为独立的作用于,外部代码不能访问
4.函数中的特殊对象arguments将为静态副本,不能与函数参数相互影响,无法修改参数
5.若使用call\apply传入null或undefined修改this时,this指向null或undefined,而不是window
6.禁止八进制字面量,如console.log(0123)等
7.eval\arguments等变为关键字,不能被使用作为变量名
8.一般函数(除对象调用的函数,或被bind\apply\call等修改过this的函数)调用时this指向null,而不是指向window
9.试图删除对象属性描述器configurable=false的属性时报错,而不是返回false或忽略
10.试图修改不可写属性(writable=false)时,报错而不是返回false或忽略。
11.arguments.caller\arguments.callee被禁用。
阅读全文
0 0
- 浅谈js严格模式 use strict
- js--严格模式 'use strict'
- Js中的严格模式use strict
- js中的严格模式use strict
- use strict 严格模式
- js strict 严格模式
- 'use strict' JavaScript严格模式
- javascript 严格模式 use strict
- JavaScript: 严格模式(use strict)
- JavaScript 严格模式(use strict)
- JavaScript 严格模式 use strict
- Javascript 严格模式use strict
- JavaScript 严格模式(use strict)
- JavaScript语法支持严格模式:”use strict”
- JavaScript语法支持严格模式:”use strict
- Javascript 严格模式详解 use strict
- 'use strict' - Javascript 的严格模式
- "use strict"; ----Javascript 严格模式详解
- Windows Internals – 1.2 概念与工具之Windows API
- 优酷视频解析之莫名其妙的钻空子
- Hibernate联合主键
- codeforces 107B(Basketball Team) 组合+概率 Java
- 微信开放js sdk 有什么用
- 浅谈js严格模式 use strict
- Windows Internals – 1.3 概念与工具之进程、线程、虚拟内存
- Android IntentService详解
- hadoop 基础xml配置
- linux安全配置项
- C语言课程设计-工资管理系统
- 宽转换和窄转换
- 五条法则解决关键词没有排名的问题
- setstylesheet