Свойство length
Синтаксис: | массив.length | Атрибуты: | { DontEnum, DontDelete } |
Значением свойства length является размер массива, т. е. количество элементов в нем, например:
var x = new Array(); x[0] = "Строка"; x[5] = "Еще строка"; var l = x.length; // l равно 6
Мы можем явно задать новый размер массива, изменяя значение свойства length. Если при этом новый размер массива меньше текущего, то лишние элементы массива будут удалены. Если же новый размер массива больше текущего, то к массиву будут добавлены новые элементы со значением undefined.
Метод concat
Синтаксис: | массив.concat(массив1) | Аргументы: | массив1 - выражение, возвращающее массив | Результат: | новый массив |
Метод concat объединяет массив и массив1 в новый массив и возвращает его. При этом все элементы массива массив1 добавляются в конец массива.
Например, сценарий
var x = new Array(1, 2, 3); var y = new Array(4, 5, 6); document.write(x.concat(y));
выведет на экран обозревателя строку 1,2,3,4,5,6.
Метод join
Синтаксис: | массив.join(разделитель) | Аргументы: | разделитель - любое строковое выражение | Результат: | строковое значение |
Метод join преобразует массив в строковое значение. Для этого все элементы массива преобразуются в строки, и эти строки объединяются в одну строку. Разделителем между ними в .результирующей строке является строка разделитель; если она опущена, то разделителем служит пустая строка.
Например, сценарий
var x = new Array(1, 2, 3); document.write(x.join("-"));
выведет на экран обозревателя строку 1-2-3.
Метод pop
Синтаксис: | массив.pop() | Результат: | значение последнего элемента массива |
Метод pop удаляет последний элемент массива и возвращает его в качестве результата. Размер массива при этом уменьшается на 1. Например, сценарий
var x = ["a", "b", "c", "d"] x.pop(); document.write(x);
выведет на экран обозревателя строку a,b,c.
Методы push и pop позволяют реализовать программный стек на базе объектов Array.
Метод push
Синтаксис: | массив.push(элемент1, :, элементN) | Аргументы: | элемент1, :, элементN - любые выражения | Результат: | новая длина массива |
Метод push добавляет значения аргументов в конец массива и возвращает в качестве результата новый размер массива, который при этом увеличивается на N. Например, сценарий
var x = ["a", "b", "c", "d"] document.write(x.push("e");
выведет на экран обозревателя число 5.
Методы push и pop позволяют реализовать программный стек на базе объектов Array.
Метод reverse
Синтаксис: | массив.reverse() | Результат: | массив |
Метод reverse изменяет порядок элементов в массиве на противоположный. При этом новый объект Array не создается, перестановка элементов производится в исходном массиве. Если не все элементы массива были определены, то им присваивается значение undefined.
Например, сценарий
var x = new Array(); x[0] = 0; x[2] = 2; x[4] = 4; document.write(x.reverse());
выведет на экран обозревателя строку 4,,2,,0.
Метод shift
Синтаксис: | массив.shift() | Результат: | значение первого элемента массива |
Метод shift удаляет первый элемент массива и возвращает его в качестве результата. Размер массива при этом уменьшается на 1. Например, сценарий
var x = ["a", "b", "c", "d"] x.shift(); document.write(x);
выведет на экран обозревателя строку b,c,d.
Методы shift и unshift позволяют реализовать программную очередь на базе объектов Array.
Метод slice
Синтаксис: | массив.slice(начало [,конец]?) | Аргументы: | начало и конец - любые числовые выражения | Результат: | новый массив |
Метод slice возвращает новый массив, содержащий указанную часть исходного массива. Аргумент начало задает индекс первого элемента копируемой части, необязательный аргумент конец - индекс ее последнего элемента. При этом:
Если значение конец неотрицательно, то копируются элементы массив[начало], массив[начало+1], :, массив[конец-1].
Если значение конец отрицательно, то копируются элементы массив[начало], массив[начало+1], :, массив[массив.length-конец-1], т. е. конец означает смещение от конца массива.
Если аргумент конец отсутствует, то копируются элементы массив[начало], массив[начало+1], :, массив[массив.length-1], т. е. копируются все элементы до конца массива.
Например, сценарий
var x = new Array(10); for (i = 0; i < 10; i++) x[i] = i; document.write(x.slice(5,-1));
выведет на экран обозревателя строку 5,6,7,8.
Метод sort
Синтаксис: | массив.sort(функция?) | Аргументы: | функция - функция сортировки, описанная ниже | Результат: | массив |
Метод sort сортирует элементы массива. При этом новый объект Array не создается, перестановка элементов производится в исходном массиве. Способ сортировки задается необязательным аргументом функция; если аргумента нет, то производится сортировка в лексикографическом порядке по возрастанию значений элементов, которые предварительно преобразуются в строки.
Функция должна иметь вид:
function compare(a, b) { if (a меньше b по критерию сортировки) return -1; if (a больше b по критерию сортировки) return 1; return 0; // a равно b }
Приведем пример сортировки массива в лексикографическом порядке по убыванию значений элементов.
Следующий сценарий
function cmp(a, b) { if (String(a) > String(b)) return -1; if (String(a) < String(b)) return 1; return 0; }
var flowers = ["астра", "роза", "пион", "ромашка"]; document.write(flowers.sort(cmp));
выведет на экран обозревателя строку ромашка,роза,пион,астра.
Метод splice
Синтаксис: | массив.splice(начало, счетчик [,элементы]?) | Аргументы: | начало и счетчик - любые числовые выражения; элементы - список любых выражений через запятую | Результат: | новый массив |
Поддержка : | | Поддерживается с версии 5.5. | | | Не поддерживается. |
Метод splice удаляет часть массива и возвращает ее в качестве результата. Если заданы элементы, то они вставляются вместо удаленной части массива. Аргумент начало задает индекс первого элемента удаляемой части, аргумент счетчик - количество удаляемых элементов.
Например, сценарий
var x = new Array(10); for (i = 0; i < 10; i++) x[i] = i; x.splice(5, 3, -5, -6, -7); document.write(x);
выведет на экран обозревателя строку 0,1,2,3,4,-5,-6,-7,8,9.
Метод toLocaleString
Синтаксис: | массив.toLocaleString() | Результат: | строковое значение | Метод toLocaleString преобразует массив в строковое значение, учитывая формат операционной системы. Результат зависит от объекта. Обычно он дает тот же результат, что и метод toString.
Метод toString
Синтаксис: | массив.toString() | Результат: | строковое значение |
Метод toString преобразует массив в строковое значение. Для этого все элементы массива преобразуются в строки, и эти строки объединяются в одну строку через запятую.
Например, сценарий
var x = new Array(1, 2, 3); document.write(x.toString());
выведет на экран обозревателя строку 1,2,3.
Метод unshift
Синтаксис: | массив.unshift(элемент1, :, элементN) | Аргументы: | элемент1, :, элементN - любые выражения | Результат: | новая длина массива |
Метод unshift добавляет значения аргументов в начало массива и возвращает в качестве результата новый размер массива, который при этом увеличивается на N.
Например, сценарий
var x = ["a", "b", "c", "d"] document.write(x.unshift("e"));
выведет на экран обозревателя число 5.
Методы shift и unshift позволяют реализовать программную очередь на базе объектов Array.
Метод valueOf
Синтаксис: | массив.valueOf() | Результат: | строковое значение |
Метод valueOf возвращает примитивное значение массива. Для этого все элементы массива преобразуются в строки, и эти строки объединяются в одну строку через запятую. Иными словами, этот метод возвращает тот же результат, что и метод toString. 1 2
8 8 8
|
|