Учитывая ваши данные выборки, кажется, вы могли бы просто использовать Object.values
:
let original = [
{1:"hello",2:"goodbye",3:"bonjour"},
{4:"hello2",5:"goodbye2",6:"bonjour2"},
{7:"hello3",8:"goodbye3",9:"bonjour3"},
{10:"hello4",11:"goodbye4",12:"bonjour4"}
]
var array = original.map(Object.values);
console.log(array);
Это работает, потому что порядок элементов в каждом объекте совпадает с порядком, которого вы хотите достичь в массиве результатов.
Если это так не всегда (например, у вас есть {12:"bonjour4",11:"goodbye4",10:"hello4"}
, и вы все еще хотите вернуть ["hello4","goodbye4","bonjour4"]
), вы можете сначала отсортировать записи по их ключам. Например:
let original = [
{1:"hello",2:"goodbye",3:"bonjour"},
{4:"hello2",5:"goodbye2",6:"bonjour2"},
{7:"hello3",8:"goodbye3",9:"bonjour3"},
{12:"bonjour4",11:"goodbye4",10:"hello4"}
]
var array = original
.map(obj => Object
.entries(obj)
.sort(([k1], [k2]) => k1 - k2)
.map(([_, v]) => v));
console.log(array);
В качестве примечания, я бы предостерег вас от использования имени JSON
, так как это скроет встроенный JSON
объект,