Объект служит для создания массивов и их редактирования. В языке скриптов массив можно создать двумя способами:
– создание массива посредством инициализации.
var arr = [“value1”, 10 , false, “text”]; //Как видно из примера, массив может содержать значения разного типа.
– создание массива при помощи оператора new.
var arr = new Array(“value1″,”value2″,”value3”);
Массив при программировании скриптов на самом деле представляет собой Std::Map, то есть не обязательно задавать элементы массива с идентификационным номером. Можно задавать их также и с текстовым значением, соответственно и обращаться к таким элементам массива через текстовое значение.
Пример:
var myMassive = new Array(); //Создаю пустой массив
myMassive[“first”] = “value1”; //Добавляю значение “value1” в массив myMassive с именем “first”
myMassive[“second”] = “value2”; //Добавляю значение “value2” в массив myMassive с именем “second”
var myVar1 = myMassive[“first”]; //Обращаюсь к элементу массива с именем “first”
var myVar2 = myMassive[“second”]; //Обращаюсь к элементу массива с именем “second”
Для добавления элементов в массив можно использовать следующие методы:
– Добавление элемента(ов) в конец массива: push(value1,value2…valueN);
– Добавление элемента(ов) в начало массива: unshift(value1,value2…valueN);
– Добавление элемента(ов) в указанное место массива (startInsert) с возможной заменой последующих элементов
(nmbToRemove): splice(startInsert,nmbToRemove,value1,value2…valueN);
– Также можно дополнять элементы массива следующим образом:
arr[3] = “value”; то есть в указанное место массива
Примеры:
var myMassive = new Array(“value1”, 10 , false, “text”); //Создаю массив с четырьмя значениями
myMassive[4] = “new value”; //Добавляю пятое значение в массив. Обратите внимание на то как происходит номерация массива: размер массива стал равен 5 элементам, а обращение к ним происходит от 0 до 4 соответственно. Результат: myMassive(“value1”, 10 , false, “text”,”new value”)
myMassive.push(“push value1″,”push value2”); //добавляю в конец массива еще 2 элемента методом push(). Результат: myMassive(“value1”, 10 , false, “text”,”new value”,”push value1″,”push value2″)
myMassive.unshift(“some first1”); //Добавляю 1 элемент в начало массива. Результат: myMassive(“some first1″,”value1”, 10 , false, “text”,”new value”,”push value1″,”push value2″)
myMassive.splice(2,6,”Inserted Value1″,”Inserted Value2″); //Удаляю элементы массива со 2 по 6 и вставляю два новых элемента. Результат: myMassive(“some first1″,”value1″,”Inserted Value1″,”Inserted Value2”);
var S = “”;
for (var i = 0; i < myMassive.length; ++i)
S += “\”” + myMassive[i] + “\” “; //На экран будет выведен текст: “some first1”
“value1” “Inserted Value1” “Inserted Value2”
infomsg(S);
Для изменения порядка массива используется функция reverse();
Пример:
//Изменение порядка массива:
var myMassive = new Array(“first”,”second”,”third”); //Создаю массив с тремя значениями
var reversedMassive = myMassive.reverse(); //Изменяю порядок массива на обратный
var S = “”;
for (var i = 0; i < reversedMassive.length; ++i)
S += “\”” + reversedMassive[i] + “\” “; //На экран будет выведен текст: “third” “second” “first”
infomsg(S);
В предыдущих примерах мы преобразовывали массив в строку с использованием цикла for, однако есть более простой способ получения строки из массива – функция join(“connectionSymbol”), где connectionSymbol – любой текст или пробел.
Пример:
//Извлечение строки из массива:
var myMassive = new Array(“first”,”second”,”third”); //Создаю массив с тремя значениями
var myStr = myMassive.join(” “); //Объединяю элементы массива через пробел в строку
infomsg(myStr);
Для объединения массивов существует функция concat(имя_массива)
Пример:
//Объединение двух массивов
var myMassive1 = new Array(“first”,”second”,”third”); //Создаю массив с тремя значениями
var myMassive2 = new Array(“four”,”five”); //Создаю массив с двумя значениями
var resultMassive = myMassive1.concat(myMassive2);//Объединяю массивы
var myStr = resultMassive.join(” “); //Объединяю элементы массива через пробел в строку
infomsg(myStr);//Получим следующий вывод: first second third four five
Для сортировки массива используем функцию sort()
Пример:
// Сортировка массива
var myMassive = new Array(“B”,”A”,”C”,0,19,10); //Создаю массив
var sortedMassive = myMassive.sort(); //Получаю отсортированный массив
var myStr = sortedMassive.join(” “); //Объединяю элементы массива через про
бел в строку
infomsg(myStr);//Получим следующий вывод: -10 0 19 A B C