javascript - Chrome控制台清除赋值和变量

标签 javascript google-chrome-devtools

我正在学习 JavaScript,并在 Chrome 控制台中进行了大量测试。即使我清除控制台,或使用我在其他线程中看到的任何命令 (localStorage.clear()),我分配的任何变量仍然会显示。

例如,如果我执行类似 var name = "Bob";

的操作

enter image description here

我清除并关闭控制台,重新打开它,然后查找 name 的值,它仍然是 Bob

enter image description here

清除这些问题的最佳方法是什么?

最佳答案

此问题的一个简单解决方案是将全局范围内不需要的任何代码包装在立即调用的函数表达式 (IIFE) 中。当函数结束时,在函数作用域中分配的所有变量都将被释放:

(function() {

    // Put your code here...

})();

有关 IIFE 的更多信息:https://en.wikipedia.org/wiki/Immediately-invoked_function_expression

[更新]

在 ES6 中,您可以使用 block (只要使用 let 而不是 var):

{

    // Put your code here...

}

有关区 block 的更多信息:http://exploringjs.com/es6/ch_core-features.html#sec_from-iifes-to-blocks

关于javascript - Chrome控制台清除赋值和变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57672650/

相关文章:

remote-debugging - 如何让 `callFrameID` 传递给 `Debugger.evaluateOnCallFrame` ?

jquery - $.focus() 在 Chrome 中不起作用

javascript - 未定义源必须以 "https://"或 "//"开头

javascript - 我想在 Canvas 上绘制动画,我是否必须使用许多不同的图片,或者它可以像真正的动画(可能是 .gif)一样保存在一个文件中?

javascript - Spark Java框架未在tomcat服务器上运行

c# - Javascript 由于 Response.Redirect() 而被忽略

Javascript图表从数据库中选取总和数据

css - 有什么方法可以保存 CSS 差异而不是在 Chrome 开发工具中保存整个样式表?

javascript - Chrome 开发者工具中的 console.log() 与 console.clear()

javascript - Chrome 开发工具中有没有办法不跳过其他 JavaScript 文件?