Вы могли бы сделать что-то вроде этого:
var keys = Object.keys(a);
var length = keys.length;
var startAt = keys.indexOf("name");
for(var i = 0; i < length ; i++) {
var prop = keys[(i+startAt)%length];
console.log(prop, a[prop]);
}
Или:
var keys = Object.keys(a).sort(function(a,b){ return a !== "name" });
for(var i = 0; i < keys.length; i++) {
var prop = keys[i];
console.log(prop, a[prop]);
}
Или:
var keys = Object.keys(a);
var idx = keys.indexOf("name");
if(idx > 0) {
var tmp = keys[0];
keys[0] = keys[idx];
keys[idx] = tmp;
}
for(var i = 0; i < keys.length; i++) {
var prop = keys[i];
console.log(prop, a[prop]);
}
Но имейте в виду, что объекты являются неупорядоченные списки, хотя большинство браузеров сохраняйте свойства объекта в том порядке, в котором они были добавлены.
Последнее значение в объекте не должно содержать запятой – saadq
Что мешает вам использовать для цикла? – JohnnyFun
, начиная с имени, не является регулярной последовательностью, можно фильтровать ключевые значения в алфавитном порядке, но это не удовлетворяет ваши потребности. Я думаю, вам нужно обработать последовательность в поле зрения. Собственно, обычно представление заботится о последовательностях при представлении данных, но будет полезно, если я знаю, как вы собираетесь представлять эти данные? Также попробуйте использовать редактор для обертывания объекта в шаблоне кода – Reyraa