多维数组在第二个循环中找不到索引
Posted
技术标签:
【中文标题】多维数组在第二个循环中找不到索引【英文标题】:Multidimensional Array Not finding Index on Second Loop 【发布时间】:2018-08-13 12:44:50 【问题描述】:我正在推送到一个多维数组,这里是代码:
modelValuesArray["input"]["'"+index+"'"] = $('.' + index).attr("value");
如果没有索引之外的语音标记,它就不起作用。
但是在下一个循环中,它会将其视为“索引”,因此不起作用..
如何在不需要语音标记的情况下推送到数组?
提前致谢
阿利斯泰尔
【问题讨论】:
modelValuesArray["input"][index] = $('.' + index).attr("value");
它不会推送到没有语音标记的数组?
我在这里没有看到对任何多维数组的任何引用。
index
的值是多少?
显示modelValuesArray
。
【参考方案1】:
如果您使用字符串作为键,例如,您将 modelValuesArray 和 modelValuesArray["input"] 视为对象。 "input" .. 迭代它时您不会看到任何值 - 请改用整数。
const arr = [];
arr[0] = "zero";
arr["index"] = "one";
arr.forEach() ===> "zero"
Object.values(arr).forEach() ===> "zero" "one"
【讨论】:
【参考方案2】:试试这个:
var modelValuesArray = [];
var index = 1;
modelValuesArray["input"] = [$('.' + index).attr("value")];
console.log(modelValuesArray["input"][index-1]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="1" value="Hello !!"/>
【讨论】:
以上是关于多维数组在第二个循环中找不到索引的主要内容,如果未能解决你的问题,请参考以下文章