gpt4 book ai didi

javascript - 如何检查Javascript全局对象是否被篡改?

转载 作者:行者123 更新时间:2023-12-02 17:04:56 25 4
gpt4 key购买 nike

我刚刚遇到了这个非常愚蠢的错误,花了 20m 才找到,只是因为我忘记了 var 关键字。我明白了,但这让我开始思考......

“有没有一种简单的方法可以查看全局对象中是否添加了任何属性?”

编辑:抱歉,忘记提及上下文位于 Node.js 中。

最佳答案

ES5 的 strict mode可以防止这种情况发生!只需将 'use strict' 语句放在任何函数或源文件的顶部即可:

'use strict';

function foo() {
var x = 5 // Forgot the comma!
y = 6; // Fails in strict mode as an implicit global
}

foo();

Linter 也应该检查这一点,并且理想情况下,您应该同时使用 linter 严格模式。我推荐JSHint .

关于javascript - 如何检查Javascript全局对象是否被篡改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25336136/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com