Page 97 - 6108
P. 97
Ці коми з'являються тому, що алгоритм виведення масиву йде від 0 до
arr.length і виводить все через кому. Відсутність значень дає кілька ком поспіль.
Для перебору елементів зазвичай використовується цикл for
var arr = ["Яблуко", "Апельсин", "Груша"];
for (var i = 0; i <arr.length; i ++) {
alert (arr [i]);
}
Існує ще один синтаксис для створення масиву з використанням
конструктора Array()
var arr = new Array (elem1, elem2, … elemN);
Він рідко використовується, тому що квадратні дужки [] коротше. Крім
того, у нього є одна особливість. Зазвичай new Array (елементи, ...)
створює масив з даних елементів, але якщо у нього один аргумент-число
new Array (число),
то він створює масив без елементів, але із заданою довжиною.
Масиви в JavaScript можуть містити як елементи інші масиви. Це можна
використовувати для створення багатовимірних масивів, наприклад матриць:
var matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ];
matrix [1] [1]; // центральний елемент
3.2.3 Методи для роботи з масивами
Метод string.split(separator [, length]) дозволяє перетворити
рядок в масив, розбивши її по роздільнику separator. Параметр length дозволяє
обмежити кількість елементів в масиві. Якщо їх більше, ніж вказано - залишок
масиву буде відкинутий.
var message = "Happy New Year";
var arr = message.split(" "); // Happy, New, Year
arr = message.split(" ", 2); // Happy, New
Виклик split("") з ророжнім рядком розіб'є рядок по буквах:
var str = "test";
str.split (""); // t, e, s, t
Метод arr.join(str) склеює масив arr в рядок, використовуючи str
як роздільник.
var arr = [ "Happy", "New", "Year"];
var str = arr.join (" "); // "Happy New Year"
Використання методу join() разом із створенням масиву за допомогою
конструктора new Array() дозволяє повторити рядок
new Array (4) .join ( "Hi!"); // Hi!Hi!Hi!
Як видно, new Array(4) створює масив без елементів довжиною 4, який
join() об'єднує в рядок, вставляючи між його елементами рядок "ля".
Так як масиви є об'єктами, то для видалення ключа можна скористатися
звичайним delete:
var arr = [ "Happy", "New", "Year"];