@Mirrrta

Как создавать массив с объектами из таких данных?

Как сделать такой массив
[{name: 'John', age: 21}, {name: 'Victor', age: 29}, ...]

из данных в таком виде?
name: 'John', age: 21, name: 'Victor', age: 29, ...


Если что, я получаю данные из formData
  • Вопрос задан
  • 101 просмотр
Решения вопроса 1
@myxomor469
Full-Stack Devloper
Если Вы получаете данные из объекта FormData(), то можно создать таким образом:
// formData это ваш объект для получения данных
const names = formData.getAll('name')
const ages = formData.getAll('age')
let result = []
for (let count = 0; count < names.length; count++) {
    let user = {
        name: names[count],
        age: ages[count]
    }
    result.push(user)
}
return result //это и будет выходной массив
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
hzzzzl
@hzzzzl
name: 'John', age: 21, name: 'Victor', age: 29, ...

то есть это просто строка?

в общем если да,

data = "name: 'John', age: 21, name: 'Victor', age: 29, name: 'John2', age: 211, name: 'Victor2', age: 234"
arr  = []
split = data.split(',')

for(let i = 0; i < split.length; i += 2) {
  arr.push( [ split[i].split(':'), split[i + 1].split(':') ] ) 
}

arr.map(elem => Object.fromEntries(elem))
Ответ написан
Комментировать
@historydev Куратор тега JavaScript
name: 'John', age: 21, name: 'Victor', age: 29, ...


или это объект?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы