JavaScript向members数组push数据失效,求问题原因分析
排查members数组push操作失效的常见原因
嘿,我来帮你捋捋这个push失效的问题!先把你给出的代码片段贴出来方便分析:
<script> var members = [ { "Class": "B", "Rating": "1776", "ID": "12537964", "Name": "Smith, John", "Expires": "2018.10.18" }, { "Class": "C", "Rating": "1500", "ID": "12210580", "Name": "Jones, Jim", "Expires": "2019.01.12" }, { "Class": "B", "Rating": "1... </script>
从你描述的情况来看,你想给这个members数组临时push数据但没生效,我整理了几个最可能的原因:
- push操作的位置或作用域不对:你贴的代码里只展示了数组的初始化,没看到实际的
push调用。比如如果你的members.push(...)写在var members = [...]之前,那时候members还没被定义,自然会失败;或者push操作在一个不同的作用域里(比如另一个函数内部),但你误以为能访问到全局的members变量。 - push后没正确验证结果:有时候push其实成功了,但你没在正确的时机检查。比如你是不是在push之后立刻在控制台用
console.log(members)打印查看?或者有没有其他代码在push之后重新覆盖了members(比如后面又写了members = [])? - 待push的数据有语法错误:如果你要push的对象本身有语法问题(比如漏写了引号、逗号,或者键名格式不对),会导致整个push语句执行失败,看起来就像push没生效。
- 数组初始化本身有语法错误:你贴的代码片段最后一个对象是不完整的(
"Rating": "1...),如果这是你实际代码的状态,那数组初始化本身就会报错,后续的push操作自然也没法正常执行!
内容的提问来源于stack exchange,提问作者verlager
相关产品推荐
相关产品推荐

