как заполнить объект через цикл с присвоением переменной значению
Не могу сообразить. Нужно перебором свойств или есть и другие способы?
Подскажите примеры |
:-? может макет минимальнный?
|
если изменить существующие то так
var obj = { a: 0, b: 0, c: 0 }; for(prop in obj){ obj[prop] = 1; } console.log(obj); если добавить новые, то простым циклом |
//
|
Есть структура:
struct: 0: Id: "1" Name: "name1" ShortName: "shortname1" ParentID: "11" Login: "login1" 1: Id: "2" Name: "name2" ShortName: "shortname2" ParentID: "22" Login: "login2" Циклом нужно всем значениям присвоить переменные. |
Вот что получилось. Верно так?
for (let i = 0; i < list.length; i++) { item[i] = { id: item[i]['Id'], name : item[i]['Name'], shortName : item[i]['ShortName'], parentId : item[i]['ID'], login : item[i]['login'] } kusts.push(item); } |
Все свойства из list перенести в kusts и чтоб этим свойствам переменные назначить.
|
:-?
for (let i = 0; i < list.length; i++) kusts[i] = {...list[i]} |
Цитата:
<script> var list = [ { Id: 1, Name: "name1", ShortName: "shortname1", ParentID: 11, Login: "login1" }, { Id: 2, Name: "name2", ShortName: "shortname2", ParentID: 22, Login: "login2" } ] var kusts = [] for (let i = 0; i < list.length; i++) { kusts[i] = list[i]; } console.log(kusts); kusts[0].Id = 3 console.log(list) </script> Копия: <script> var newO = JSON.parse(JSON.stringify(list)) for (i in newO) { newO[i].Name = 'some new name' //n.ShortName = 'some new shortname' } console.log(newO) </script> |
Rise, чтобы в древнем браузере работало (я про spread operator, и не только =>...) надо через browserify пропустить :)
|
Часовой пояс GMT +3, время: 16:20. |