Есть ли лучший способ создать двумерный массив в javascript, чем этот?
var divcookies = new Array();
divcookies[0] = new Array(2);
divcookies[0][0] = name;
divcookies[0][1] = value;
В результате получается двумерный массив с плохими данными, добавленными в середине. Я ожидаю такой массив.
(name1, value1, name2, value2, name3, value3)
Вместо этого я получаю это.
(name1, value2, ,name2, value2, name3, value3)
Я на самом деле не знаю, когда добавляются эти дополнительные неверные данные, потому что, если я предупреждаю во время цикла, который заполняет массив, кажется, что он только перебирает 3 раза, чтобы получить три пары ожидаемых значений.
Так что я ищу другой способ получить двумерный массив.
function get_cookies_array() {
var divcookies = new Array();
if (document.cookie && document.cookie != '') {
var split = document.cookie.split(';');
for (var i = 0; i < split.length; i++) {
var name_value = split[i].split("=");
name_value[0] = name_value[0].replace(/^ /, '');
if ( name_value[0].search("compage") != -1 ) {
alert (divname+" "+ divarray);
divcookies[i] = new Array(2);
divcookies[i][0] = decodeURIComponent(name_value[0]);
divcookies[i][1] = decodeURIComponent(name_value[1]);
}
}
}
alert (divcookies);
return divcookies;
}
jsBin http://jsbin.com/iwuqab