Структуры в JavaScript

С 2018 года существует гораздо более короткое и элегантное решение. Просто используйте. Array.prototype.sort () .

Пример:

var items = [
  { name: 'Edward', value: 21 },
  { name: 'Sharpe', value: 37 },
  { name: 'And', value: 45 },
  { name: 'The', value: -12 },
  { name: 'Magnetic', value: 13 },
  { name: 'Zeros', value: 37 }
];

// sort by value
items.sort(function (a, b) {
  return a.value - b.value;
});

97
задан nickf 2 February 2009 в 06:25
поделиться

3 ответа

Единственной разницей между литералами объектов и созданными объектами являются свойства, наследованные от прототипа.

var o = {
  'a': 3, 'b': 4,
  'doStuff': function() {
    alert(this.a + this.b);
  }
};
o.doStuff(); // displays: 7
<час>

Вы могли сделать фабрику структуры.

function makeStruct(names) {
  var names = names.split(' ');
  var count = names.length;
  function constructor() {
    for (var i = 0; i < count; i++) {
      this[names[i]] = arguments[i];
    }
  }
  return constructor;
}

var Item = makeStruct("id speaker country");
var row = new Item(1, 'john', 'au');
alert(row.speaker); // displays: john
168
ответ дан Markus Jarderot 5 November 2019 в 12:28
поделиться

Я всегда использую литералы объектов

{id: 1, speaker:"john", country: "au"}
26
ответ дан vava 5 November 2019 в 12:28
поделиться

Я использую объекты стиль JSON для немых структур (никакие функции членства).

2
ответ дан Robert Gould 5 November 2019 в 12:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: