我在使用 javascript 中的 concat 函数时遇到了一些问题。据我所知,我正在正确使用它,但它没有成功地将 JSON 中的数组“value”连接到数组“currentAbilities”:
$.each(ABILITIES, function(key,value) {
if(key==raceName||(key==className&&(!isAcolyte)))
{
document.getElementById('abs').innerHTML = value[1];
currentAbilities.concat(value);
}
})
innerHTML 设置行表明数组“value”确实存在。知道为什么我无法连接吗?值当然来自 JSON,这与它有什么关系吗?恐怕我最近才熟悉 $.each 和 JSON 用法,可能做错了。
最佳答案
假设 JSON 已被解析,您需要保留对 concat()
创建的新 Array 的引用,因为 .concat()
方法不会修改原创...
currentAbilities = currentAbilities.concat(value);
或者如果你想修改currentAbilities
数组,只需使用.push
和.apply
...
currentAbilities.push.apply(currentAbilities, value)
此外,请确保您的 raceName
和 className
变量符合您的预期。
关于javascript - Concat 似乎不适用于 JSON 获取的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11595268/