Чтение и запись элементов массива

Доступ к элементам массива осуществляется с помощью оператора [].
Слева от скобок должна присутствовать ссылка на массив.
Внутри скобок должно находиться произвольное выражение, возвращающее неотрицательное целое значение. Этот синтаксис пригоден как для чтения, так и для записи значения элемента массива.

var a = ["world"]; // Соз­дать мас­сив с од­ним эле­мен­том
var value = a[0]; // Про­чи­тать эле­мент 0
a[1] = 3.14; // За­пи­сать зна­че­ние в эле­мент 1
i = 2;
a[i] = 3; // За­пи­сать зна­че­ние в эле­мент 2
a[i + 1] = "hello"; // За­пи­сать зна­че­ние в эле­мент 3
a[a[i]] = a[0]; // Про­чи­тать эле­мен­ты 0 и 2, за­пи­сать зна­че­ние в эле­мент 3

Массивы являются специализированной разновидностью объектов. Квадратные скобки, используемые для доступа к элементам массива, действуют точно так же, как квадратные скобки, используемые для доступа к свойствам объекта. Интерпретатор JavaScript преобразует указанные в скобках числовые индексы в строки – индекс 1 превращается в строку "1", – а затем использует строки как имена свойств. В преобразовании числовых индексов в строки нет ничего особенного: то же самое можно проделывать с обычными объектами:

o = {}; // Соз­дать про­стой объ­ект
o[1] = "one"; // Ин­дек­си­ро­вать его це­лы­ми чис­ла­ми

console.log(o) // {1: "one"}

Следует четко отличать индексы в массиве от имен свойств объектов. Все индексы являются именами свойств, но только свойства с именами, представленными целыми числами в диапазоне от 0 до 232–2 являются индексами. Все массивы являются объектами, и вы можете добавлять к ним свойства с любыми именами. Но только свойства, являющиеся индексами влияют на длину массива.

Например:

var a = [];
a[0] = 10;
a[1] = 20;
a[-1] = 30;
a['b'] = 40;

console.log(a) // [10, 20]
console.log(a.length) // 2
console.log(a['b']) // 40
console.log(a[-1]) // 30

<<< back

results matching ""

    No results matching ""