美文网首页
严格模式

严格模式

作者: 梅子_may | 来源:发表于2018-08-23 15:00 被阅读0次

ECMScript 5引入严格模式(strict mode)。严格模式定义了一种不同的解析与执行模型,ES3中的不确定行为会得到处理,某些不安全的操作也会抛出错误。支持严格模式的浏览器:IE10+,Firefox 4+,Safari5.1+,Opera 12+和Chrome。

若整个脚本启用严格模型,则在顶部添加代码:

"use strict";

这是一个编译指示。

若函数在严格模式下执行,则在函数内部的上方添加:"use strict";

1. 给未经声明的变量(没用var声明)在严格模式下会抛出ReferenceError错误。

2.严格模式下,delete一个未声明未定义的变量会出错。(普通模式下不出错,但这么做无意义)。

3. 严格模式对函数有一些限制:不能把函数或参数命名为eval或arguments;不能出现两个命名参数同名的情况。

4.严格模式下不能通过给arguments赋值来传递给命名参数;且重写arguments的值会导致语法错误(代码不会执行)。

5.严格模式下,访问arguments.caller和arguments.callee都会导致错误。

6.严格模式下,未指定环境对象而调用函数,则this值不会转型为window。除非明确把函数添加到某个对象,或者调用apply()或call(),否则this值将是undefined。

相关文章

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

    严格模式 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指向调用函数...

  • 严格模式

    JS的严格模式: 定义和优点:严格模式是一种特殊的执行模式,它修复了部分语言上的不足(禁用with),提供了更强的...

网友评论

      本文标题:严格模式

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