Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Массив в объект ( четные элементы как ключи ) (https://javascript.ru/forum/dom-window/78662-massiv-v-obekt-chetnye-ehlementy-kak-klyuchi.html)

zava75 16.10.2019 11:09

Массив в объект ( четные элементы как ключи )
 
Добрый день. Подскажите как решить есть
var arr = [ key1, value1 , key2, value2 ]


нужно на выходе

var arr = {
 key1: value1 ,
 key2: value2
}

j0hnik 16.10.2019 12:03

var obj ={};
for(let i = 0; i<arr.length; i++){
  obj[arr[i]] = arr[++i];
}

zava75 16.10.2019 12:23

Цитата:

Сообщение от j0hnik (Сообщение 514093)
var obj ={};
for(let i = 0; i<arr.length; i++){
  obj[arr[i]] = arr[++i];
}

var arr = [ key1, value1 , key2, value2 ];
var obj ={};

for(let i = 0; i<arr.length; i++){
  obj[arr[i]] = arr[++i];
}
console.log(obj);

спасибо торможу)

ksa 16.10.2019 12:32

Цитата:

Сообщение от zava75
очевидно что не то(

Примеры тестовые нужно делать нормально - будет то. ;)

var arr = [ 0, 1 , 2, 3 ];
var obj ={};
for(var i = 0; i<arr.length; i++){
  obj[arr[i]] = arr[++i];
};
for( i in obj){
  alert(i+' = '+obj[i]);
};

Триви 16.10.2019 14:28

От делать нефиг в качестве поиграться поизвращаться ))

var arr = [ 0, 1 , 2, 3 ],
     obj ={};
for(var i = 0; i<arr.length; i++){
     if(arr[i]%2 == 1) obj[arr[i]-1] = arr[i];
};
for( i in obj){
     alert('Key' + i+' => ' + obj[i]);
};

ksa 16.10.2019 14:46

Цитата:

Сообщение от Триви
в качестве поиграться поизвращаться

Ты не правильно организуешь цикл прохода по массиву... :(


Часовой пояс GMT +3, время: 15:29.