gpt4 book ai didi

javascript - 使用局部变量更改全局变量值

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:49:49 25 4
gpt4 key购买 nike

我试图通过将全局变量设置为函数中的参数来更改它。我遇到的问题是当我更改局部变量时我的全局变量没有改变。我知道变量的范围是造成这种情况的原因,但我不知道如何让它发挥作用。这是我正在使用的代码:

    var blnUpgradeGlobal;

function SelectUpgrade(strUpgradeName, blnUpgradeLocal) {
if (blnUpgradeLocal) {
blnUpgradeLocal= false;
$("#" + strUpgradeName).css("background-color", "#EAC300")
}
else {
blnUpgradeLocal= true;
$("#" + strUpgradeName).css("background-color", "Lime")
}
}

<div id="Upgrade1" onclick="SelectUpgrade(this.id, blnUpgradeGlobal)">
Content
</div>

所以我在这里试图完成的是,当用户单击 div 时,它会切换 onClick 事件中设置的 bool 全局变量。我不想在函数中指定确切的变量,因为我需要编写一个大的嵌套 if 语句,因为有很多升级。

提前谢谢你。

最佳答案

有两种可能的选择:

  1. 在函数声明中更改第二个参数名称(从 blnUpgradeLocal 更改为其他名称)

  2. 使用 window.blnUpgradeGlobal 引用更改全局变量值

前者更好

关于javascript - 使用局部变量更改全局变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17179890/

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