Попросите его создать файл с phpinfo()
. Вероятно, у него нет версии PHP> = 5.3.0.
Используя индексы ссылочного массива в качестве порядка сортировки, реализуйте логику сортировки в функции сортировки, извлекайте ключи объекта и сортируйте их в соответствии с заданным массивом и помещайте отсортированный объект в исходный массив.
var item_array = [{ "Email Address": "c", "First Name": "a", "Last Name": "b", "Permission": "Training Administrator", "Telephone": "d", "User Group": "Company Administrator" }, {"Email Address": "3", "First Name": "1", "Last Name": "2", "Permission": "6", "Telephone": "4", "User Group": "5"}];
var item_order = ["First Name", "Last Name", "Email Address", "Permission", "Telephone", "User Group"];
item_array.forEach((obj, idx, arr) => {
arr[idx] = Object.keys(obj)
.sort((a, b) => {
return item_order.indexOf(a) - item_order.indexOf(b);
})
.reduce((acc, ele)=>{acc[ele] = obj[ele]; return acc;},{});
});
console.log(item_array);
Вы можете использовать map
и reduce
следующим образом:
const item_array = [{"Email Address":"c","First Name":"a","Last Name":"b","Permission":"Training Administrator","Telephone":"d","User Group":"Company Administrator"},{"Email Address":"3","First Name":"1","Last Name":"2","Permission":"6","Telephone":"4","User Group":"5"}],
item_order = ["First Name","Last Name","Email Address","Permission","Telephone","User Group"];
const ordered = item_array.map(item =>
item_order.reduce((acc, key) => ( acc[key] = item[key], acc ), {})
);
console.log(ordered)