资讯专栏INFORMATION COLUMN

使用浏览器调试严格模式下的代码

tigerZH / 715人阅读

摘要:它的代码草稿纸简直是浏览器里的调试神器,不仅简单直观,而且也具备了一般的编辑器功能,无奈用习惯了的,我用得较少但感觉作为开发者工具绝对业界良心。

一般平时的少量测试代码, 我习惯直接在Chrome的DEV中调试, 一般的调试都没有问题, 但难免一些小概率事件, 比如调试严格模式下的代码(关于严格模式,mark在这里?严格模式), 这时候如果直接在console里输入"use strict"是无效的,比如如下代码在console里正常输出:

"use strict"
i = 10
console.log(i) //正常输出10 ,但是严格模式下这是不合法的,因为i没有申明

据说是因为在console中的js代码是通过eval()来执行的。解决方法是有,只是比较麻烦, 因为严格模式不仅可以针对整个脚本("use strict"写在脚本第一行),也可以只针对函数(放在函数体的第一行)

于是在Chrome中可以这样:

(function()
{
    "use strict";
    i =10
    console.log(i) //报错Uncaught ReferenceError: a is not defined(…)
}())

这样写的话console才会正确报错,这种写法确实比较麻烦, 说到这里不得不提下firefox的开发工具,用firefox的同学就完全没有这个问题了。 它的代码草稿纸简直是浏览器里的调试神器(Shift+F4), 不仅简单直观,而且也具备了一般的编辑器功能, 无奈用习惯了chrome的DEV,firefox我用得较少(但感觉firebug作为开发者工具绝对业界良心)。如果哪位同学还知道什么轻量简单的调试工具(直接打开就能用的!),还麻烦告诉下我。

以下是firefox的代码草稿纸:

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/86260.html

相关文章

  • JS 中 this 在各个场景下的指向

    摘要:声明了一个函数,并且将它作为一个构造函数调用构造函数调用构造函数调用是函数的构造函数调用。构造函数中的在构造函数调用中指向新创建的对象构造函数调用的上下文是新创建的对象。来看看下面示例中的上下文正在进行构造函数调用,其中上下文是。 为了保证的可读性,本文采用意译而非直译。 想阅读更多优质文章请猛戳GitHub博客,一年百来篇优质文章等着你! 1. this 的奥秘 很多时候, JS 中...

    WrBug 评论0 收藏0
  • JavaScript中的严格模式

    摘要:字符串不能用作标识符变量或函数名参数名等在严格模式下,函数声明无法嵌套在语句或块中。严格模式下用法无效如果在函数内声明变量,则不能在此函数外部使用该变量。在严格模式下,更改的值不会影响的值,因为对象只是一个本地副本。 本文同步自 我的博客,地址:http://reeoo.me/archives/strictmode.html 什么是严格模式 我们平时写的JavaScript代码一般都运...

    wwolf 评论0 收藏0
  • JavaScript 之 面向对象 [ 严格模式 ]

    摘要:严格模式描述严格模式可以分别作用在全局作用域中和函数作用域中严格模式是对代码的一种限制方式严格模式可以将不明确显示的错误转变成明确显示严格模式可以修正一些解释器难以优化的错误严格模式下的变量禁止意外创建变量没有开启严格模式时在调用该变量时, 严格模式 描述 严格模式可以分别作用在全局作用域中和函数作用域中 严格模式是对JavaScript代码的一种限制方式 严格模式可以将不明确显...

    zsirfs 评论0 收藏0
  • 严格模式的简单认识

    摘要:不支持严格模式的浏览器与严格模式的浏览器行为也不一样,所以不要在未经严格模式特性测试情况下使用严格模式。在严格模式下,使用上述标识符作为变量名会导致语法错误。严格模式下,命名参数与对象是完全独立的。在严格模式下,函数的值始终是指定的值。 严格模式 概述 严格模式是什么 严格模式是JavaScript中的一种限制性更强的变种模式。严格模式不是一个子集:它的语义上与正常代码有着明显的差异。...

    learning 评论0 收藏0
  • 那些年,前端学习之路的疑难杂症(一):严格模式与非严格模式

    摘要:反之亦然非严格合并严格看起来是非严格的。在普通的里面给一个拼写错误的变量名赋值会使全局对象新增一个属性并继续工作尽管后面可能出错在现在的中有可能。第三严格模式禁止删除声明变量。 文章整理自MSDN:https://developer.mozilla.org... 1.逐步使用严格模式 ECMAScript 5的严格模式是JavaScript中的一种限制性更强的变种方式。严格模式不是一个...

    zombieda 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<