美文网首页
Node.js严格模式

Node.js严格模式

作者: 冯艳辉brook | 来源:发表于2018-01-05 17:35 被阅读0次

"use strict"是JavaScript中一个非常好的特性,而且非常容易使用。

作用

- 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;

- 消除代码运行的一些不安全之处,保证代码运行的安全;

- 提高编译器效率,增加运行速度;

- 为未来新版本的Javascript做好铺垫。

使用方法

// file.js

"use strict"

function test(){}

这样的file.js都会应用上"use strict"模式。

如果你仅想在一个函数中使用,如下代码仅仅在test中起作用

// file.js

function test(){

    "use strict";

    function temp(){}

}

严格模式的作用

1、检查对象中的重复键

es6支持重复键

let value = {

    a : 0,

    b: 1,

    a : 1

}

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

2、未声明变量

plane = 5;

3、重复的参数

function test(data, data){

}

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

4、限制函数中的arguments

function test(data){

    arguments[0] = 'aaa';

    console.log(data);

}

run('bbb');     //'aaa';

现在你可以使用"use strict"

 function test(data){

    "use strict";

    arguments[0] = 'aaa';

    console.log(data, arguments);

}

run('bbb');   //bbb  { '0': 'aaa' }

arguments[0] = 'aaa' 改变了参数data,在严格模式下,这种操作无效,只对arguments起作用

5、不能用前导0声明8进制直接量

例如: let a = 012;

相关文章

  • Node.js严格模式

    "usestrict"是JavaScript中一个非常好的特性,而且非常容易使用。 作用 - 消除Javascri...

  • 面向对象-严格模式、作用域

    严格模式 js有两中开发模式:非严格模式(默认)+严格模式(“ues strict”) 严格模式:会进行更严格的代...

  • JavaScript this

    全局下this 非严格模式/严格模式 window 函数内this 非严格模式 window 严格模式 undef...

  • 开发中的严格模式

    js中有严格模式和非严格模式两种运行环境 在开发中,有非严格模式和严格模式2种开发模式 在严格模式下,会做更加严格...

  • 严格模式和非严格模式

    es6添加了严格模式("use strict")主要作用: 1.严格模式通过抛出错误来消除一些原有的静默错误。 2...

  • JS基本类型和变量

    严格模式 ECMAScripr5引入了严格模式。启用严格模式可以在顶部添加: “use strict” 严格模式下...

  • 严格模式

    ECMScript 5引入严格模式(strict mode)。严格模式定义了一种不同的解析与执行模型,ES3中的不...

  • 严格模式

    概览 严格模式的 目的:使代码更加 安全和 易于优化,代表了这门语言未来的发展方向。我们应该在代码中一直使用。 内...

  • 严格模式

    除了正常的运行模式,JavaScript还有第二种运行模式:“严格模式”(strict mode)。顾名思义,这种...

  • 严格模式this

    在严格模式下,在全局作用域中,this指向window对象(和非严格模式一致) 对象的函数中的this指向调用函数...

网友评论

      本文标题:Node.js严格模式

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