JavaScript实现点击按钮在0和1间循环切换sum值的方法
实现点击按钮切换sum在0和1之间循环
你的现有代码存在两个核心问题,直接修正并补充逻辑即可实现需求:
问题点
- 事件监听时错误执行了
loop(),这会导致页面加载时就运行一次loop函数,而非点击按钮时触发。正确做法是传递函数引用loop。 loop函数内部缺少切换sum值的逻辑。
修正后的完整代码
let sum = 0; // 修正事件绑定:传递函数引用,而非立即执行函数 button.addEventListener("click", loop); function loop() { // 切换sum的值:0 ↔ 1 sum = 1 - sum; // 可选:控制台打印当前值,方便验证效果 console.log("当前sum值:", sum); }
逻辑说明
- 初始
sum为0,每次点击按钮触发loop函数:- 当
sum是0时,1 - sum计算结果为1,赋值后sum变为1; - 当
sum是1时,1 - sum计算结果为0,赋值后sum变回0。
- 当
- 你也可以用更直观的三元表达式替代切换逻辑,效果完全一致:
sum = sum === 0 ? 1 : 0;
内容的提问来源于stack exchange,提问作者CrveniFlash
相关产品推荐
相关产品推荐

