【发布时间】:2019-05-12 08:29:09
【问题描述】:
在我的应用程序中,我需要在某个地方存储仅由一种方法使用的全局变量。我在前端使用 javascript (jquery)。
我的代码如下所示:
$(function () {
let myVar;
// ...
};
// and method
function foo() {
if (!myVar) {
// calculate myVar
}
// do something with myVar and update its value
}
问题是我在该方法中看不到 myVar。我也尝试过使用 localStorage 和 sessionStorage。但是当我刷新页面值时仍然设置。我需要在页面刷新后计算新值并且不使用以前的值。
在我的情况下存储变量的最佳做法是什么?谢谢你的建议。
【问题讨论】:
-
window.myVar = "value"; -
What is the best practice在窗口全局存储肯定不是最佳实践。这真的取决于,最好的方法是使用模块加载器,您可以将全局变量存储在模块中。在您的示例中,您甚至可以通过将foo函数放在 jQuery 回调函数中来使用范围。
标签: javascript jquery function ecmascript-6