85、JavaScript 严格模式、库、框架与工具全解析

JavaScript 严格模式、库、框架与工具全解析

1. JavaScript 严格模式

严格模式为 JavaScript 带来了更严谨的代码规范,避免了一些常见的错误和潜在的安全问题。

1.1 函数参数与严格模式

ES6 引入了剩余参数、解构参数和默认参数等特性,增强了函数组织和定义参数的能力。但 ECMAScript 7 规定,使用这些高级参数特性的函数,其函数体内不能使用严格模式,否则会抛出错误,不过全局严格模式仍然允许使用。

// ok
function foo(a, b, c) {
  "use strict";
}

// bad
function bar(a, b, c='d') {
  "use strict";
}

// bad
function baz({a, b, c}) {
  "use strict";
}

// bad
function qux(a, b, ...c) {
  "use strict";
}

ES6 的新特性要求参数解析模式与函数体一致。由于在函数体内遇到 "use strict" 指令时,JavaScript 解析器需要在解析函数参数前检查函数体内的指令,这会增加复杂性。因此,ES7 引入此规定,让解析器在解析函数前明确操作模式。

1.2 使用 eval() 函数

eval() 函数在严格模式下有了重大升级,它不再会在包含它的上下文中创建变量或函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值