[英]JavaScript: Push Array with multiple values on same index
我有一個數組,可以存儲一些像這樣的值:
array[0] = "string", "string"
array[1] = "string", "string"
array[2] = "string", "string"
array[3] = "string"
如您所見,有時我在相同的索引上有2個值,但有時卻沒有。 然后我需要將這些值推到另一個數組,一個值一個。
我不能使用這個:
for(var i= 0; i< 4 ; i++){
newarray.push(array[i][0]);
newarray.push(array[i][1]);
}
否則我會推空白值(我猜)。
如何檢查該索引上是否有2個值或一個值,以便可以使用其他圓圈?
謝謝!
當您這樣做時,您的代碼可能無法按預期工作:
array[0] = "a", "b", "c"
它將僅將"a"
分配給array[0]
並返回"c"
。 要為另一個數組分配這些值,您應該使用以下方法:
array[0] = ["a", "b", "c"]
為了保持結構一致性,如果我在數組中只有一個元素,我也會使用數組結構。
array[1] = ["a"]
使用此方法,您可以遍歷數組,然后遍歷嵌套數組以獲取其值。
for (var i = 0; i < array.length; i++) {
for (var j = 0; j < array[i].length; j++) {
newarray.push(array[i][j]);
}
}
小提琴: http : //jsfiddle.net/nDhP5/
如何檢查該索引上是否有2個值或一個值,以便可以使用其他cicle?
假設您要一次將多個值存儲在數組中,則可以檢查包含這些值的數組的長度。 這樣,您可以查看是否具有1個或2個或更多值。
if (array[i].length == 1) { // you have 1 value }
if (array[i].length == 2) { // you have 2 values }
你可以這樣
var Rdata = [];
var temp_ray = ["v1","v2","v3"];
Rdata.push(temp_ray);
var Rlen = Rdata.length;
console.log('Rdata length '+Rlen); // 1
JsFiddle :: Jsbin演示
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.