gpt4 book ai didi

Javascript 全局变量不会改变

转载 作者:行者123 更新时间:2023-11-28 19:56:41 25 4
gpt4 key购买 nike

我在外部 JavaScript 文件中有以下代码:

var number = 1;
function doSomething() {
alert(number);
number++;
}

doSomething()单击按钮时调用。

但是,每次单击该按钮时,警报消息始终保持为 1number永远不会增加。如果我输入 number++;在警报之前,警报显示 2每次。

我也尝试过定义 number如:var window.number = 1;window.number = 1;没有成功。

如何才能真正增加变量并将其存储在函数外部的 number 中?

最佳答案

鉴于对该问题的评论,我能想到的唯一解释是该按钮是:

  • 在表单内
  • 提交按钮

当您单击它时,JavaScript 将运行,然后提交表单。

表单的操作大概是未定义的或"",因此它会重新加载页面。

这会重新初始化 JS,并将 number 设置回 1

  • 使用 type="button" 而不是 type="submit"
  • 删除表单
  • 阻止 JS 中的默认操作

关于Javascript 全局变量不会改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22422201/

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