Назад    Вперёд

Ядро JavaScript 1.5. Справочник.


Array

 

Позволяет работать с массивами.

 

Объект ядра

Реализован в

JavaScript 1.1, NES 2.0

JavaScript 1.3: добавлен метод toSource; изменено свойство length; изменён метод push.

ECMA-версия

ECMA-262


Создание
Конструктор объекта Array:

new Array(arrayLength)
new Array(element0, element1, ..., elementN)

 

Литерал массива:

[element0, element1, ..., elementN]

 
JavaScript 1.2

Если Вы специфицируете LANGUAGE="JavaScript1.2" в тэге <SCRIPT> :

new Array(element0, element1, ..., elementN)

 
JavaScript 1.2

Если Вы не специфицируете LANGUAGE="JavaScript1.2" в тэге <SCRIPT> :

new Array([arrayLength])
new Array([element0[, element1[, ..., elementN]]])

 
JavaScript 1.1
new Array([arrayLength])
new Array([element0[, element1[, ..., elementN]]])

Параметры

arrayLength

Начальный размер массива. Доступ к этому значению Вы можете получить через свойство length.
Если специфицированное значение - не число, создаётся массив размером 1 с первым элементом, имеющим специфицированное значение.
Максимальный возможный размер массива: 4,294,967,295.

elementN

Список значений элементов массива. Если специфицирована эта форма, массив инициализируется со специфицированными значениями в качестве элементов, а свойство length массива устанавливается в количество аргументов.


Описание

Массив это упорядоченный набор значений, ассоциированных с одним именем переменной.

В этом примере создаётся объект Array с литералом массива; массив coffees содержит три элемента и имеет длину "три":

coffees = ["French Roast", "Columbian", "Kona"]

 

Вы можете создать плотный массив из двух или более элементов, начиная с индекса 0, если Вы определяете начальные значения для всех элементов. Плотным является массив, в котором каждый элемент имеет значение. Следующий код создаёт плотный массив из трёх элементов:

myArray = new Array("Hello", myVar, 3.14159)
 

Индексирование массива

 Элемент массива индексируется порядковым номером.
Например: предположим, Вы определяете такой массив:

myArray = new Array("Wind","Rain","Fire")

Затем Вы обращаетесь к первому элементу массива myArray[0], а ко второму элементу - myArray[1].
 

Специфицирование единственного параметра

Если Вы специфицируете единственный числовой параметр в конструкторе Array, Вы специфицируете начальный размер массива.
Следующий код создаёт массив из 5 элементов:

billingMethod = new Array(5)

Поведение конструктора Array зависит от того, является ли единственный параметр числом.

Следующий код создаёт массив размером 25, затем присваивает значения первым трём элементам:

musicTypes = new Array(25)
musicTypes[0] = "R&B"
musicTypes[1] = "Blues"
musicTypes[2] = "Jazz"
 

Увеличение размера массива косвенно

Размер массива увеличивается, если Вы присваиваете значение элементу с более высоким индексом, чем текущий размер массива. Следующий код создаёт массив размером 0, а затем присваивает значение элементу 99. Это изменяет размер массива на 100.

colors = new Array()
colors[99] = "midnightblue"
 

Создание массива путём использования результата совпадения

В результате совпадения регулярного выражения и строки может быть создан массив. Этот массив имеет свойства и элементы, которые предоставляют информацию о совпадении. Массив является return-значением RegExp.exec, String.match и String.replace.
Чтобы лучше пояснить эти свойства и элементы, просмотрите следующий код, а затем - таблицу:

 

<SCRIPT LANGUAGE="JavaScript1.2">
//Совпадает одно d с последующим одним или более b с последующим одним d
//Запоминаются совпавшие b с последующим d
//Регистр игнорируется

myRe=/d(b+)(d)/i;
myArray = myRe.exec("cdbBdbsbz");

</SCRIPT>

 

Свойства и элементы, возвращённые из этого совпадения:

 

Свойство/Элемент

Описание

Пример

input

Свойство только для чтения, содержание которого отражает оригинальную строку, относительно которой выполняется совпадение с регулярным выражением.

cdbBdbsbz

index

Свойство только для чтения, которое является индексом с базой 0 совпадения в строке.

1

[0]

Элемент только для чтения, который специфицирует последние совпавшие символы.

dbBd

[1], ...[n]

Элементы только для чтения, которые специфицируют совпадения подстроки в скобках, если она включена в регулярное выражение. Количество подстрок, заключённых в кавычки, не лимитировано.

[1]=bB 
[2]=d


Обратная совместимость

JavaScript 1.2.

Если Вы специфицируете единственный параметр в конструкторе Array, поведение зависит от того, специфицировали ли Вы LANGUAGE="JavaScript1.2" в тэге <SCRIPT>:

JavaScript 1.1 и более ранние.

Если Вы специфицируете единственный параметр в конструкторе Array, Вы специфицируете начальный размер массива. Следующий код создаёт массив из пяти элементов:

billingMethod = new Array(5)

 

JavaScript 1.0.

Вы обязаны индексировать массив порядковыми числительным; например, myArray[0].


Свойства. Резюме.

 

Свойство

Описание

constructor

Специфицирует функцию, создающую прототип объекта.

index

Для массива, созданного из совпадения с регулярным выражением, индекс с базой 0 места совпадения в строке.

input

Для массива, созданного из совпадения с регулярным выражением, отражает оригинальную строку, относительно которой выполнялся поиск совпадений с регулярным выражением.

length

Количество элементов в массиве.

prototype

Позволяет добавлять свойства ко всем объектам.


 
Метод. Резюме.

Метод

Описание

concat

Объединяет два массива и возвращает новый массив.

join

Объединяет все элементы массива в строку.

pop

Удаляет последний элемент массива и возвращает этот элемент.

push

Добавляет один или более элементов в конец массива и возвращает новый размер массива.

reverse

Переворачивает элементы массива: первый элемент становится последним, а последний элемент - первым.

shift

Удаляет первый элемент массива и возвращает этот элемент.

slice

Извлекает раздел массива и возвращает новый массив.

splice

Добавляет и/или удаляет элементы массива.

sort

Сортирует элементы массива.

toSource

Возвращает литерал массива, представляющий специфицированный массив; Вы можете использовать это значение для создания нового массива. Переопределяет метод Object.toSource.

toString

Возвращает строку, представляющую массив и его элементы. Переопределяет метод Object.toString.

unshift

Добавляет один или более элементов впереди массива и возвращает новый размер массива.

valueOf

Возвращает примитивное значение массива. Переопределяет метод Object.valueOf.

 

Кроме того, этот объект наследует методы watch и unwatch из Object.


Примеры

Пример 1.

Создаётся массив msgArray размером 0, затем присваивается значение элементам msgArray[0] и msgArray[99], а размер массива становится 100.

msgArray = new Array()
msgArray[0] = "Hello"
msgArray[99] = "world"
// Следующий оператор - true,
// поскольку определён элемент msgArray[99].
if (msgArray.length == 100)
   myVar="Массив имеет размер 100."

 
Пример 2.

Двухмерный массив. Создаётся двухмерный массив и результат присваивается переменной myVar.

myVar="Тест многомерного массива; "
a = new Array(4)
for (i=0; i < 4; i++) {
   a[i] = new Array(4)
   for (j=0; j < 4; j++) {
      a[i][j] = "["+i+","+j+"]"
   }
}
for (i=0; i < 4; i++) {
   str = "Ряд "+i+":"
   for (j=0; j < 4; j++) {
      str += a[i][j]
   }
   myVar += str +"; "
}

В этом примере выполняется присвоение следующей строки переменной myVar (разрывы строк даны для удобства чтения):

Тест многомерного массива;
Ряд 0:[0,0][0,1][0,2][0,3];
Ряд 1:[1,0][1,1][1,2][1,3];
Ряд 2:[2,0][2,1][2,2][2,3];
Ряд 3:[3,0][3,1][3,2][3,3];


 

 

concat



Объединяет два массива и возвращает новый массив.

Чей метод

Array

Реализован в

JavaScript 1.2, NES 3.0

Версия ECMA

ECMA-262


Синтаксис

concat(arrayName2, arrayName3, ..., arrayNameN)

 

Параметры

 

arrayName2...
arrayNameN

Объединяемые массивы.

 


Описание

concat не изменяет оригиналы массивов, но возвращает копию "на один уровень глубже", которая содержит копии элементов, скомбинированных из массивов-оригиналов. Элементы оригинальных массивов копируются в новый массив так:

Если к любому массиву добавляется новый элемент, на другой массив это не влияет.

 

Следующий код объединяет два массива:

alpha=new Array("a","b","c")
numeric=new Array(1,2,3)
alphaNumeric=alpha.concat(numeric) // создаёт массив ["a","b","c",1,2,3]

 

Следующий код объединяет три массива:

num1=[1,2,3]
num2=[4,5,6]
num3=[7,8,9]
nums=num1.concat(num2,num3) // создаёт массив [1,2,3,4,5,6,7,8,9]


 

constructor


 

Специфицирует функцию, которая создаёт прототип объекта. Заметьте, что значением этого свойства является ссылка на саму функцию, а не строка, содержащая имя функции.

Свойство из

Array

Реализовано в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262


Описание

См. Object.constructor.


 

index


 

Для массива, созданного путём совпадения с регулярным выражением, индекс с базой 0 совпадения в строке.

Свойство из

Array

Static

Реализовано в

JavaScript 1.2, NES 3.0


 

input


 

Для массива, созданного путём совпадения с регулярным выражением, отражает строку-оригинал, относительно которой выполнялся поиск совпадений.

Свойство из

Array

Static

Реализовано в

JavaScript 1.2, NES 3.0

 

join


 

Объединяет все элементы массива в строку.

Метод из

Array

Реализован в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262


Синтаксис

join(separator)


Параметры

separator

Специфицирует строку для отделения каждого элемента массива. Сепаратор конвертируется в строку, если необходимо. Если отсутствует, элементы массива разделяются запятыми.


Описание

Конверсия с строку всех объединяемых в строку элементов массива.


Примеры

Следующий пример создаёт массив a с тремя элементами, затем объединяет массив трижды: используя сепаратор по умолчанию, запятую и пробел, затем знак "плюс".

a = new Array("Wind","Rain","Fire")
myVar1=a.join()      // присваивает "Wind,Rain,Fire" переменной myVar1
myVar2=a.join(", ")  // присваивает "Wind, Rain, Fire" переменной myVar1
myVar3=a.join(" + ") // присваивает "Wind + Rain + Fire" переменной myVar1


См. также

Array.reverse


 

length


 

Беззнаковое 32-битное целое, специфицирующее количество элементов массива.

Свойство из

Array

Реализовано в

JavaScript 1.1, NES 2.0

JavaScript 1.3: length это беззнаковое 32-битное целое число со значением меньше 232.

Версия ECMA

ECMA-262


Описание

Значением свойства length является целое положительное число, меньшее, чем 2 в 32 степени (232).

Вы можете установить свойство length для усечения массива в любой момент. Если Вы увеличиваете массив путём изменения его свойства length, реальное количество элементов не увеличивается; например, если Вы установите length в 3, когда текущее значение 2, массив будет по прежнему содержать 2 элемента.


Примеры

В этом примере функция getChoice использует свойство length для итерации по всем элементам массива musicType. musicType это элемент select в форме musicForm.

function getChoice() {
   for (var i = 0; i < document.musicForm.musicType.length; i++) {
      if (document.musicForm.musicType.options[i].selected == true) {
         return document.musicForm.musicType.options[i].text
      }
   }
}

 

В этом примере массив statesUS укорачивается до размера 50, если его текущий размер больше, чем 50.

if (statesUS.length > 50) {
   statesUS.length=50
}


 

pop


 

Удаляет последний элемент массива и возвращает этот элемент. Этот метод изменяет размер массива.

Метод из

Array

Реализован в

JavaScript 1.2, NES 3.0

Версия ECMA

ECMA-262 Edition 3


Синтаксис

pop()


Параметры

Отсутствуют.


Пример

Следующий код создаёт массив myFish, содержащий 4 элемента, затем удаляет последний элемент.

myFish = ["angel", "clown", "mandarin", "surgeon"];
popped = myFish.pop();


См. также

push, shift, unshift


 


prototype

 

Представляет прототип для данного класса. Вы можете использовать прототип для добавления свойств и методов во все экземпляры класса. О прототипах см. Function.prototype.

Свойство из

Array

Реализовано в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262


 

push


 

Добавляет один или более элементов в конец массива и возвращает новый размер массива. Этот метод изменяет размер массива.

Метод из

Array

Реализован в

JavaScript 1.2, NES 3.0

JavaScript 1.3: push возвращает новый размер массива до того, как последний элемент будет добавлен к массиву.

Версия ECMA

ECMA-262 Edition 3


Синтаксис

push(element1, ..., elementN)


Параметр

element1, ...,
elementN

Элементы, добавляемые в конец массива.


Описание

Поведение метода push аналогично поведению функции push из Perl 4. Обратите внимание, что оно отличается от поведения в Perl 5.


Обратная Совместимость


JavaScript 1.2.

Метод push возвращает последний элемент, добавленный к массиву.


Пример

Следующий код создаёт массив myFish, содержащий два элемента, затем добавляет к нему ещё два элемента. После выполнения кода, pushed содержит 4. (В JavaScript 1.2 pushed после выполнения кода содержит "lion".)

myFish = ["angel", "clown"];
pushed = myFish.push("drum", "lion");


См. также

pop, shift, unshift


 

reverse


 

Переворачивает элементы массива: первый элемент массива становится последним, а последний - первым.

Метод из

Array

Реализован в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262


Синтаксис

reverse()


Параметры

Отсутствуют.


Описание

Метод reverse переворачивает элементы вызывающего объекта массива.


Примеры

Создаётся массив myArray, содержащиё три элемента, затем массив переворачивается.

myArray = new Array("one", "two", "three")
myArray.reverse()

 

Этот код изменяет массив myArray так, что:

См. также

Array.join, Array.sort


 

shift


 

Удаляет первый элемент массива и возвращает этот элемент. Этот метод изменяет размер массива.

Метод из

Array

Реализован в

JavaScript 1.2, NES 3.0

Версия ECMA

ECMA-262 Edition 3


Синтаксис

shift()


Параметры

Отсутствуют.


Пример

Следующий код отображает массив myFish до и после удаления первого элемента. Он также отображает удалённый элемент:

myFish = ["angel", "clown", "mandarin", "surgeon"];
document.writeln("myFish before: " + myFish);
shifted = myFish.shift();
document.writeln("myFish after: " + myFish);
document.writeln("Удалён этот элемент: " + shifted);

 

На выходе будет:

myFish before: ["angel", "clown", "mandarin", "surgeon"]
myFish after: ["clown", "mandarin", "surgeon"]
Удалён этот элемент: angel


См. также

pop, push, unshift


 

slice


 

Извлекает раздел массива и возвращает новый массив.

Метод из

Array

Реализован в

JavaScript 1.2, NES 3.0

Версия ECMA

ECMA-262 Edition 3


Синтаксис

slice(begin[,end])


Параметры

begin

Индекс с базой 0, с которого начинается извлечение.

end

Индекс с базой 0, на котором заканчивается извлечение:

  • slice извлекает до end (не включительно).
    slice(1,4) извлекает элементы со второго по третий включительно (элементы, индексированные 1, 2 и 3).

  • Если индекс отрицательный, end указывает смещение от конца последовательности. slice(2,-1) извлекает элементы с 3 по первый включительно в конце последовательности.

  • Если end опущен, slice извлекает до конца последовательности.


Описание

slice не изменяет оригинальный массив, но возвращает новую копию "на один уровень глубже", которая содержит копии элементов извлечённых из оригинального массива. Элементы оригинального массива копируются в новый массив так:

Если новый элемент добавляется к любому массиву, другой массив не изменяется.


Примеры

В следующем примере slice создаёт новый массив newCar из myCar. Оба содержат ссылку на объект myHonda. Если цвет myHonda изменяется на purple, оба массива отражают изменение.

 

<SCRIPT LANGUAGE="JavaScript1.2">

//Используя slice, создать newCar из myCar.
myHonda = {color:"red",wheels:4,engine:{cylinders:4,size:2.2}}
myCar = [myHonda, 2, "cherry condition", "purchased 1997"]
newCar = myCar.slice(0,2)

//Записать значения из myCar, newCar и цвет myHonda,
// на который имеются ссылки в обоих массивах.
document.write("myCar = " + myCar + "<BR>")
document.write("newCar = " + newCar + "<BR>")
document.write("myCar[0].color = " + myCar[0].color + "<BR>")
document.write("newCar[0].color = " + newCar[0].color + "<BR><BR>")

//Изменить цвет  myHonda.
myHonda.color = "purple"
document.write("The new color of my Honda is " + myHonda.color + "<BR><BR>")

//Записать цвет myHonda, на который ссылаются оба массива.
document.write("myCar[0].color = " + myCar[0].color + "<BR>")
document.write("newCar[0].color = " + newCar[0].color + "<BR>")

</SCRIPT>

 

Скрипт записывает:

 

myCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2,
   "cherry condition", "purchased 1997"]
newCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2]
myCar[0].color = red newCar[0].color = red
The new color of my Honda is purple
myCar[0].color = purple
newCar[0].color = purple


 

sort


 

Сортирует элементы массива.

Метод из

Array

Реализован в

JavaScript 1.1, NES 2.0

JavaScript 1.2: модифицировано поведение.

Версия ECMA

ECMA-262


Синтаксис

sort(compareFunction)


Параметры

compareFunction

Специфицирует функцию, которая определяет порядок сортировки. Если опущен, массив сортируется лексикографически (в словарном порядке) в соответствии с конверсией в строку каждого элемента.


Описание

Если compareFunction не предоставляется, элементы сортируются путём конвертирования их в строки и сравнения строк в лексикографическом порядке ("словарь" или "телефонная книга," не числовой порядок). Например, "80" встанет перед "9" в лексикографическом порядке, но при числовой сортировке 9 встанет перед 80.

Если compareFunction предоставляется, массив элементов сортируется в соответствии с return-значением функции сравнения. Если a и b это два сравниваемых элемента, тогда:

 

Итак, функция compare имеет следующую форму:

 

function compare(a, b) {
   if (a меньше, чем b, по некоторому критерию сортировки)
      return -1
   if (a больше, чем b, по некоторому критерию сортировки)
      return 1
   // a обязано быть равно b
   return 0
}

 

Чтобы сравнить числа вместо строк, функция compare может просто вычесть b из a:

 

function compareNumbers(a, b) {
   return a - b
}

 

JavaScript использует стабильную сортировку: индекс взаимного расположения a и b не изменяется, если a и b равны. Если индекс a меньше, чем индекс b перед началом сортировки, он останется таким и после сортировки, независимо от того, как переместятся a и b после сортировки.

Поведение метода sort отличается в JavaScript 1.1 и в JavaScript 1.2.

В JavaScript 1.1, на некоторых платформах, метод sort не работает. Этот метод работает на всех платформах в JavaScript 1.2.

В JavaScript 1.2, этот метод больше не конвертирует undefined-элементы в null; вместо этого он сортирует их до самого конца массива. Например, предположим, имеется скрипт:

 

<SCRIPT>
a = new Array();
a[0] = "Ant";
a[5] = "Zebra";

function writeArray(x) {
   for (i = 0; i < x.length; i++) {
      document.write(x[i]);
      if (i < x.length-1) document.write(", ");
   }
}

writeArray(a);
a.sort();
document.write("<BR><BR>");
writeArray(a);
</SCRIPT>

 

В JavaScript 1.1 печатается:

 

ant, null, null, null, null, zebra
ant, null, null, null, null, zebra

 

В JavaScript 1.2 печатается:

 

ant, undefined, undefined, undefined, undefined, zebra
ant, zebra, undefined, undefined, undefined, undefined


Примеры

В следующем примере создаются 4 массива и выводится оригинальный массив, затем - отсортированные массивы. Числовые массивы сортируются сначала без, а затем - с использованием функции compare.

 

<SCRIPT>
stringArray = new Array("Blue","Humpback","Beluga")
numericStringArray = new Array("80","9","700")
numberArray = new Array(40,1,5,200)
mixedNumericArray = new Array("80","9","700",40,1,5,200)

function compareNumbers(a, b) {
   return a - b
}

document.write("<B>stringArray:</B> " + stringArray.join() +"<BR>")
document.write("<B>Sorted:</B> " + stringArray.sort() +"<P>")

document.write("<B>numberArray:</B> " + numberArray.join() +"<BR>")
document.write("<B>Sorted without a compare function:</B> " + numberArray.sort() +"<BR>")
document.write("<B>Sorted with compareNumbers:</B> " + numberArray.sort(compareNumbers) +"<P>")

document.write("<B>numericStringArray:</B> " + numericStringArray.join() +"<BR>")
document.write("<B>Sorted without a compare function:</B> " + numericStringArray.sort() +"<BR>")
document.write("<B>Sorted with compareNumbers:</B> " + numericStringArray.sort(compareNumbers) +"<P>")

document.write("<B>mixedNumericArray:</B> " + mixedNumericArray.join() +"<BR>")
document.write("<B>Sorted without a compare function:</B> " + mixedNumericArray.sort() +"<BR>")
document.write("<B>Sorted with compareNumbers:</B> " + mixedNumericArray.sort(compareNumbers) +"<BR>")
</SCRIPT>

 

Как показано на выводе, если используется функция compare, числа сортируются корректно вне зависимости от того, являются они числами или строками чисел:

 

stringArray: Blue,Humpback,Beluga
Sorted: Beluga,Blue,Humpback

numberArray: 40,1,5,200
Sorted without a compare function: 1,200,40,5
Sorted with compareNumbers: 1,5,40,200

numericStringArray: 80,9,700
Sorted without a compare function: 700,80,9
Sorted with compareNumbers: 9,80,700

mixedNumericArray: 80,9,700,40,1,5,200
Sorted without a compare function: 1,200,40,5,700,80,9
Sorted with compareNumbers: 1,5,9,40,80,200,700


См. также

Array.join, Array.reverse


 

splice


 

Изменяет содержимое массива, добавляя новые элементы и удаляя старые.

Метод из

Array

Реализован в

JavaScript 1.2, NES 3.0

JavaScript 1.3: возвращает массив, содержащий удалённые элементы.

Версия ECMA

ECMA-262 Edition 3


Синтаксис

splice(index, howMany, [element1][, ..., elementN])


Параметры

index

Индекс, с которого начинается изменение массива.

howMany

Целое число, обозначающее количество удаляемых старых элементов массива. Если howMany равно 0, никакие элементы не удаляются. В этом случае Вы должны специфицировать как минимум один новый элемент.

element1, ...,
elementN

Элементы, добавляемые к массиву. Если Вы не специфицировали никаких новых элементов, splice только удаляет элементы из массива.


Описание

Если Вы специфицируете разное количество элементов для вставки и для удаления, массив в конце вызова будет иметь другой размер.

Метод splice возвращает массив, содержащий удалённые элементы. Если удалён только один элемент, возвращается массив из одного элемента.


Обратная Совместимость


JavaScript 1.2.

Метод splice возвращает удалённый элемент, если удаляется только один элемент (параметр howMany равен 1); иначе метод возвращает массив, содержащий удалённые элементы.


Примеры

Следующий скрипт иллюстрирует использование splice:

 

<SCRIPT LANGUAGE="JavaScript1.2">

myFish = ["angel", "clown", "mandarin", "surgeon"];
document.writeln("myFish: " + myFish + "<BR>");

removed = myFish.splice(2, 0, "drum");
document.writeln("После добавления 1: " + myFish);
document.writeln("
удалён: " + removed + "<BR>");

removed = myFish.splice(3, 1)
document.writeln("После удаления 1: " + myFish);
document.writeln("
удалён: " + removed + "<BR>");

removed = myFish.splice(2, 1, "trumpet")
document.writeln("
После замещения 1: " + myFish);
document.writeln("
удалён: " + removed + "<BR>");

removed = myFish.splice(0, 2, "parrot", "anemone", "blue")
document.writeln("После замещения 2: " + myFish);
document.writeln("удалён: " + removed);

</SCRIPT>

 

Этот скрипт выводит:

 

myFish: ["angel", "clown", "mandarin", "surgeon"]

После добавления 1: ["angel", "clown", "drum", "mandarin", "surgeon"]
удалён: undefined

После удаления 1: ["angel", "clown", "drum", "surgeon"]
удалён: mandarin

После замещения 1: ["angel", "clown", "trumpet", "surgeon"]
удалён: drum

После замещения 2: ["parrot", "anemone", "blue", "trumpet", "surgeon"]
удалён: ["angel", "clown"]


 

toSource


 

Возвращает строку исходного кода массива.

Метод из

Array

Реализован в

JavaScript 1.3


Синтаксис

toSource()


Параметры

Отсутствуют.


Описание

Метод toSource возвращает следующие значения:

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде. Вы можете вызвать toSource в ходе отладки, чтобы проверить содержимое массива.


Примеры

Чтобы проверить исходный код массива:

 

alpha = new Array("a", "b", "c")
alpha.toSource() //возвращает ["a", "b", "c"]


См. также

Array.toString


 

toString


 

Возвращает строку, представляющую специфицированный массив и его элементы.

Метод из

Array

Реализован в

JavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262


Синтаксис

toString()


Параметры

Отсутствуют.


Описание

Объект Array переопределяет метод toString из Object. Для объектов Array метод toString объединяет массив и возвращает одну строку, содержащую все элементы массива, разделённые запятыми. Например, следующий код создаёт массив и использует toString для конвертации массива в строку.

 

var monthNames = new Array("Jan","Feb","Mar","Apr")
myVar=monthNames.toString() // присваивает "Jan,Feb,Mar,Apr" переменной myVar

 

JavaScript вызывает метод toString автоматически, когда массив представлен как текстовое значение или когда на массив имеется ссылка при конкатенации строк.


Обратная Совместимость


JavaScript 1.2.

Если Вы специфицируете LANGUAGE="JavaScript1.2" в тэге <SCRIPT>, toString возвращает строку, представляющую исходный код массива. Это то же самое значение, что и значение, возвращаемое методом toSource в JavaScript 1.3 и более поздних версиях.

 

<SCRIPT LANGUAGE="JavaScript1.2">
var monthNames = new Array("Jan","Feb","Mar","Apr")
myVar=monthNames.toString() // присваивает '["Jan", "Feb", "Mar", "Apr"]'
                            // переменной myVar
</SCRIPT>


См. также

Array.toSource


 

unshift


 

Добавляет один или более элементов в начало массива и возвращает новый размер массива.

Метод из

Array

Реализован в

JavaScript 1.2, NES 3.0

Версия ECMA

ECMA-262 Edition 3


Синтаксис

arrayName.unshift(element1,..., elementN)


Параметры

element1,...,
elementN

Элементы, добавляемые в начало массива.


Пример

Следующий код отображает массив myFish до и после добавления элементов:

 

myFish = ["angel", "clown"];
document.writeln("myFish до: " + myFish);
unshifted = myFish.unshift("drum", "lion");
document.writeln("myFish после: " + myFish);
document.writeln("Новый размер: " + unshifted);

 

Вывод будет таким:

 

myFish до: ["angel", "clown"]
myFish после: ["drum", "lion", "angel", "clown"]
Новый размер: 4


См. также

pop, push, shift


 

valueOf


 

Возвращает примитивное значение массива.

Метод из

Array

Реализован в

JavaScript 1.1

Версия ECMA

ECMA-262


Синтаксис

valueOf()


Параметры

Отсутствуют.


Описание

Объект Array наследует метод valueOf из Object. Метод valueOf из Array возвращает примитивное значение массива или примитивное значение его элементов таким образом:


Тип объекта элемента

Тип данных возвращаемого значения

Boolean

Boolean

Number или Date

number

Все остальные

string

 

 

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде.


См. также

Object.valueOf


Назад    Вперёд

Copyright © 2000 Netscape Communications Corp. Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.

Hosted by uCoz