也许我错过了一些明显的事情,但我正在学习
JavaScript,并在Chrome控制台中进行了大量测试.即使我清除或使用我在其他线程中看到的任何命令数(localStorage.clear())无论我分配了什么或给定的变量仍然显示.
例如,我做一些像var name =“Bob”的东西;
我清除并关闭控制台..重新打开它..寻找名称的价值..它仍然是鲍勃.
当我想要时,我想清除这个.最好的方法是什么?
解决方法
当在开发者控制台中声明任何变量或函数时,您所影响的是全局执行上下文,Web浏览器为
window
.
当您clear()
控制台时,您告诉Chrome删除这些操作的所有可见历史记录,不清除您附加到窗口的对象.
为此,您必须手动删除每个对象的引用:
delete name; name //=> undefined
如果必须通过删除重复删除多个对象的开销太大,则将每个值存储为对象的属性,例如,数据,您可以删除一个语句中的所有属性:
var data = {}; data.name = 'Bob'; data.age = 60; delete data; data.name //=> ReferenceError: data is not defined data.age //=> ReferenceError: data is not defined