Alert(myArray.length)

// добавить эдемент последним

myArray[myArray.length] = 'последнее значение'

 

Обратите внимание, что значение Array.length на единицу больше номера последнего элемента массива, т.к. нумерация в массиве начинается с нуля, а свойство length показывает общее количество элементов.

Класс Array так же содержит ряд методов, существенно упрощающих некоторые рутинные операции с массивами:

 

Array.join() Получение списка элементов массива в виде одной строки без разделителей.
Array.join(разделитель) Получение списка элементов массива в виде одной строки, причем элементы массива разделены строкой "разделитель"
Array.reverse() Изменение порядка сортировки массива. Этот метод "переворачитвает" массив: первый элемент становится последним и наоборот.
Array.sort() Сортировка массива по алфавиту. Если массив содержит числовые данные, то при сортировке используются их строковые представления.
Array.sort(функция_сортировки) Сортировка массива по пользовательскому критерию, который задаётся с помощью собственной функции сортировки:

Рассмотрим небольшой пример:

// функция сортировки массива

Function sortByLength(a, b)

{

if(a.length > b.length) return 1;

Else

if(a.length = b.length) return 0;

else return -1;

}

// инициализация массива

var myArray = new Array()

myArray[0] = 'Ярославль'

myArray[1] = 'Ямал'

myArray[2] = 'Ставрополь'

myArray[3] = 'Омск'

myArray[4] = 'Анапа'

alert('исходный массив:\n\n' + myArray.join('\n'))

// сортируем по алфавиту

myArray.sort();

alert('сортированный по алфавиту:\n\n' + myArray.join('\n'))

// сортируем в обратном порядке

myArray.reverse();

alert('перевёрнутый:\n\n' + myArray.join('\n'))

// сортируем по длине с помощью собственной функции

myArray.sort(sortByLength);

alert('сортированный по длине:\n\n' + myArray.join('\n'))

Как видите, пользоваться методами массива очень просто. Самое интересное в этом примере - функция сортировки. Она должна всегда иметь два параметра и возвращать число. Порядок сортировки определяется знаком возвращаемого числа. Если число отрицательное - первый аргумент должен в массиве располагаться раньше второго, если положительное - позже. Если элементы равны, то обычно возвращается ноль, а порядок элементов не изменяется.

В JavaScript1.1 и выше реализованы дополнительные свойства и методы массивов, расширяющие возможности для программистов. Например, добавлены методы concat() и slice(), позволяющие собъединить массивы и получить кусок массива соответственно. К сожалению, ещё не все браузеры поддерживают JavaScript1.1 и JavaScript1.2, поэтому при разработке кроссбраузерных скриптов использовать новые нестандартные свойства и методы надо очень аккуратно.

Таким образом, массивы - это один из наиболее гибких и удобных механизмов JavaScript, т.к. позволяет с лёгкостью манипулировать даже относительно большими объемами данных. Массивы надо использовать везде, где заранее неизвестно количество хранимых данных и их тип.

С другой стороны, увлекаться и делать массивы из одного-двух элементов тоже не стоит. Перед созданием массива подумайте, а точно ли он нужен? Как показывает практика - в половине случаев проще обойтись двумя лишними переменными.

 

Циклы

 

Все языки программирования имеют дело с циклами. В JavaScript бывают циклы двух видов: While и For. Циклы While — когда вы не знаете точно, сколько раз нужно повторять команду.

Синтаксис таков:

for (начальное значение; конечное; шаг) {S}

где S последовательность операторов.

Теперь while:

while (логическое выражение) {S}

последовательность операторов S будет повторятся пока истинно логичиское выражение

 

Пример:

Сначала для for

<HTML>

<HEAD>

</HEAD>

<BODY>

<H3>Посчитаем до пяти</H3>

<script language="JavaScript">

for (i=1; i<=5; i++) {

document.write(i + "<BR>");

}

</SCRIPT>

Вот и все.

</BODY>

</HTML>

 

Чаще всего, циклы применяют при редактировании массивов. Дело в том, что просто так нельзя даже вывести на экран массив, не то что его по элементам обработать. Как раз для таких действий и применяется цикл for, при этом, если необходимо обработать массив и вывести его на экран, то его синтаксис будет таким:

text = new Array();

text = ["красный", "синий", "зеленый"];

textOut = new Array();

 

for(var i=0; i<text.length; i++)

{

textTemp = "<font color = red size = 7>" + text[i] + "</font>";

 

textOut[textOut.length] = textTemp; // добавляем записи в массив

}

 

document.writeln(textOut.join(' '));

 

Как видно из примера, можно в процессе вывода на экран содержимого массива обработать его.

 

Теперь для while

<HTML>

<HEAD>

</HEAD>

<BODY>

<SCRIPT LANGUAGE="JavaScript">

loops=3;

num=1;

while (num <= loops) {

document.write("Добрый ")

num=num+1

}

document.write("Вечер!")

</SCRIPT>

</BODY>

</HTML>

Результат

Для for:

Посчитаем до пяти

Теперь для while:

Добрый Добрый Добрый Вечер!


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: