存储值以便在以后的函数中使用的最佳方法是什么?我听说全局变量很邪恶

2024-04-08

所以我使用的代码位于http://jsfiddle.net/8j947/10/ http://jsfiddle.net/8j947/10/它为变量 isLive 返回 true 或 false 值。如何在稍后的函数中使用变量 onLive?我在以下位置阅读了答案在不使用全局变量的情况下从其他函数访问变量 https://stackoverflow.com/questions/407048/accessing-variables-from-other-functions-without-using-global-variables,但我在让它发挥作用时遇到了很多麻烦。我想要的只是存储值(true 或 false),这样我就可以在后面的函数中将其调用到 if 语句中。谁能给我最简单的方法来做到这一点?有没有办法将数据存储为对象?


只需将变量定义在与定义依赖于它的函数相同的范围内即可。如果您的函数位于全局范围内,那么您的变量也应该位于全局范围内。

如果您正在开发将在多个页面中使用的插件或控件或脚本,那么是的,避免全局变量。另一方面,如果您需要在多个位置提供特定于页面的数据,则全局变量绝对合适。

有时您必须了解规则,以便知道何时可以打破它们。

现在,如果您刚刚意识到您的函数位于全局范围内,并且您想要更改它,只需将所有代码包装在匿名函数中并立即调用它:

(function(){
    var scopeLevelVariable = true;
    function scopeLevelFn(){
        ...
    }
    window.globallyAvailableVariable = "foo";
    window.globallyAvailableFunction = function(){
        ...
    };
})();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

存储值以便在以后的函数中使用的最佳方法是什么?我听说全局变量很邪恶 的相关文章