У меня есть такой объект, возвращающийся как JSON-ответ от сервера:
{"0":"1","1":"2","2":"3","3":"4"}
Я хочу преобразовать его в массив JavaScript следующим образом:
["1","2","3","4"]
Есть ли лучший способ сделать это? Где бы я ни читал, люди используют сложную логику, используя циклы. Так есть ли альтернативные методы для этого?
javascript
jquery
arrays
json
javascript-objects
Нихил Агравал
источник
источник
Ответы:
Это на самом деле очень просто с jQuery's
$.map
FIDDLE
и почти так же легко без jQuery, преобразовать ключи в массив и затем отобразить значения с помощью
Array.map
FIDDLE
Предполагается, что он уже проанализирован как объект javascript, и на самом деле это не JSON, который является строковым форматом, в этом случае также
JSON.parse
будет необходим прогон .В ES2015 есть
Object.values
на помощь, что делает это бризомисточник
Надеюсь, это то, что вы после!
источник
Вы просто делаете это как
DEMO
источник
Нет ничего похожего на «объект JSON» - JSON - это обозначение сериализации.
Если вы хотите превратить ваш объект яваскрипта в яваскрипт массиве , либо вы написать свой собственный цикл [который не был бы этот комплекс!], Или полагаться на underscore.js
_.toArray()
метод:источник
Здесь нет ничего сложного. Зацикливайте элементы вашего объекта и присваивайте их массиву
http://jsfiddle.net/Qq2aM/
источник
DEMO
источник
Попробуй это:
источник
Еще одна альтернатива вопросу
источник
Используя raw javascript, предположим, что у вас есть:
Вы можете получить значения с:
Вывод:
источник
Не уверен, что мне здесь не хватает, но простая попытка приведенного ниже кода делает свою работу. Я что-то здесь упускаю?
https://jsfiddle.net/vatsalpande/w3ew5bhq/
источник
Предполагая, что у вас есть значение, подобное следующему
Затем вы можете превратить это в массив JavaScript, используя следующие
Это работает и для преобразования json в мультиразмерные массивы javascript.
Ни один из других методов на этой странице, казалось, не работал полностью для меня при работе со строками, закодированными в php json, кроме метода, который я упоминаю здесь.
источник
Вот пример того, как вы можете получить массив объектов, а затем отсортировать массив.
источник
Это лучшее решение. Я думаю так.
источник
источник
Вы можете конвертировать json Object в Array & String, используя PHP.
источник
Вы можете использовать
Object.assign()
с пустым литералом массива[]
какtarget
:Если вы проверяете polyfill ,
Object.assign(target, ...sources)
просто копирует все перечисляемые собственные свойства изsource
объектов в целевой объект. Еслиtarget
это массив, он добавит числовые ключи к литералу массива и вернет этотtarget
объект массива.источник