你的位置:首页 > Java教程

[Java教程]为什么使用use strict可以节约你的时间


上一篇介绍了js的strict模式,这一篇主要是js strict模式的优点。
检查对象中的重复键
var zombie = {  eyeLeft : 0,  eyeRight: 1,  // ... a lot of keys ...  eyeLeft : 1}

这段代码会抛出一个错误因为 eyeLeft 出现了两次。这比你用眼睛去找错误要快多了。

未声明变量

plane = 5;

你现在已经知道忘记在这个变量前面加var了。不过如果你不知道,调试起来是非常痛苦的,因为这个变量是声明在全局上下文(global context)中的,而且可能被其他地方改掉。想象一下,如果你声明了一个全局的 i, 在嵌套循环中可能会引起混乱。

重复的参数

function run(fromWhom, fromWhom){}

注意fromWho出现了两次,因此会抛出一个错误。

限制函数中的arguments

var run = function(fromWhom){  arguments[0] = 'alien';  alert(fromWhom);}run('zombie');// alert: 'alien';

现在你可以使用"use strict"

var run = function(fromWhom){  "use strict";  arguments[0] = 'alien';  alert(fromWhom);}run('zombie');// alert: 'zombie';

arguments[0] = 'alien' 改变了参数fromWhom,use strict 又节约了你的时间。