gpt4 book ai didi

javascript - 如何为 'window' 创建别名?

转载 作者:行者123 更新时间:2023-11-29 14:42:52 25 4
gpt4 key购买 nike

我正在编写一个使用大量全局变量的 javascript 应用程序:

window.x = 0;
window.y = 0;

我希望能够为窗口对象使用别名:

w = window;
w.x = 0;
w.y = 0;

但是,当我将 w 设置为 window 时,它似乎递归地将自己添加到 DOM 中:

w = window;
// In the DOM Explorer:
> w page.html
> w page.html
> w page.html...

这似乎会破坏内存,但应用程序运行良好。有没有更好的方法来创建全局变量或窗口别名?

最佳答案

无论何时声明一个没有 var 的变量,实际上都是将其分配给 window 对象。

所以,

w = window;

成为

window.w = window

这就是递归行为的原因。

您可以使用 IIFE实现你想要的。

(function(w) {
w.x = 0;
w.y = 0;
})(window)

关于javascript - 如何为 'window' 创建别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36412185/

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