JS新手提问:实现向数组添加变量功能的代码运行结果不符合预期的原因
问题原因
- 核心问题:你声明的
name函数从未被调用,函数内部的b.push(n)插入逻辑完全没有执行,最后直接打印b时,数组还保持初始化的空状态,输出自然不符合预期。 - 潜在问题:不要使用
name作为全局函数名。浏览器全局环境下存在默认的window.name内置属性,全局声明name函数会覆盖该属性,可能引发未知的全局冲突,建议替换为更具语义的函数名,比如addNumToArray。
修正后代码
var b = []; var n = 1; function addNumToArray() { b.push(n); console.log(b); } // 手动调用函数,执行插入逻辑 addNumToArray(); console.log(b);
运行效果
修正后两次打印的输出均为[1],符合你要把变量插入数组的预期目标。
内容的提问来源于stack exchange,提问作者Bart_1986
相关产品推荐
相关产品推荐

