- •Объект Array
- •Методы : join (), revers (), sort (), push(), unshift(), pop (), shift()
- •Преобразует каждый элемент массива в строку, а затем конкатенирует эти строки, вставляя между
- •Метод: reverse ()
- •Методы: push(), unshift() Синтаксис:
- •Например:
- •Методы: pop (), shift() Синтаксис:
- •Методы concat (), slice () и splice ()
- •Пример:
- •2) Метод slice () возвращает часть массива в виде отдельного объекта Array
- •Пример 1:
- •Второй аргумент (необязательный) – это конечный индекс выделяемого фрагмента массива, то есть индекс
- •3) Метод splice () – изменяет массив- аргумент, а также возвращает новый массив,
- •Второй аргумент – это количество элементов, которое нужно удалить (в отличие от slice(),
- •Данный метод позволяет помещать на место удаляемых элементов массива новые элементы. Все аргументы
- •Пример 2:
- •Метод: sort () Синтаксис: arrayObj.sort () arrayObj.sort (funct)
- •При необходимости элементы в начале преобразуются в строки, чтобы их можно было сравнивать.
- •При задании функции сравнения func необходимо указать два аргумента А и Б.
- •Пример:
- •Объект Object
- •В JavaScript можно использовать вместо обычной записи объектов и свойств (через точку)
- •Причем, если этого свойства в объекте раньше не было, то оно будет создано
- •Создание объектов JavaScript, определяемых пользователем
- •Потом в него добавляем свойства:
- •Любое свойство объекта может быть сложным объектом, например:
- •Доступ к свойствам объектов осуществляется с помощью следующей записи:
- •Можно прикрепить к объекту метод, например:
- •2. Объявление объекта с помощью
- •Рассмотрим, как устроен формат JSON и как он работает.
- •Второе правило.
- •JSON в настоящее время широко используется в библиотеках JavaScript: Prototype, jQuery и др.
- •3. Определение типов объектов с
- •А: Создание функции-конструктора (структуры объекта)
- •Оператор this используется в языке JavaScript для ссылки на данный объект.
- •В: Инициализация объекта
- •Для ссылки на значения, хранящиеся в объекте, то есть на свойства объекта, можно
- •Объекты могут использовать свойства, которые сами являются другими объектами.
- •то можно создать новые объекты person с именами p1 и p2 с помощью
- •Рассматривая этот пример,
- •Этот объект определяется следующим образом:
- •Добавление новых свойств объектов
- •Удаление объектов и свойств
- •Создание методов (для третьего способа)
- •Внимание: При связывании метода с функцией не указываются круглые скобки ().
- •Определение метода можно включать в определение объекта.
- •Изменим определение функции emailAddr, чтобы включить в нее ссылку на функцию show_Details():
- •Теперь функцию show_Details() можно вызвать с помощью оператора
- •Добавление новых
- •count – новый метод, что станет конструктором объекта String;
- •Пример:
- •Оператор this внутри функции ссылается на тот объект, что будет идти
- •Вывод:
- •Отражение объектов
Теперь функцию show_Details() можно вызвать с помощью оператора
e1.showDetails();
Так как переменная e1 является ссылкой на объект emailAddr, который, в свою очередь, является ссылкой на объект person с помощью переменной p1, то в результате выполнения функции будет выведена следующая информация:
Name: Петров В.Г.
Email: petrov@pmi.donetsk.ua
52
Добавление новых
методов – конструкторов в объект
Все объекты имеют свойство prototype для создания новых конструкторов объекта.
Пусть countChars() – функция подсчета появления символа в строке, что находится в аргументе.
Тогда создание нового метода происходит по следующему синтаксису:
String. prototype.count = countChars; 53
count – новый метод, что станет конструктором объекта String;
countChars – ссылка на функцию countChars().
После этого новый метод count может быть применен к любому объекту типа String.
54
Пример:
……………….
function countChars (c) { var hits = 0;
pos = this.toLowerCase().indexOf(arg); while ( pos != -1 )
{ hits ++;
pos = this.toLowerCase().indexOf(arg,pos+1);
}
return(hits);
}
55
String. prototype.count = countChars; //Привязка функции countCars (c) к
// новому методу count объекта String.
var myStr = new String(“Некоторая строка нового текста”);
var numChar = myStr.count(“o”);
alert(“Здесь символ ‘o’ встречается” + numChar + “раз”);
……………………….
56
Оператор this внутри функции ссылается на тот объект, что будет идти
сметодом count.
Впримере - переменной numChar присвоено значение выражения mySt.count(“o”).
Определение метода count() при помощи свойства prototype привязывает функцию countChars (). То есть при обращение к методу count() вызывается функция countChars().
57
Вывод:
Функция – метод-конструктор добавляется только через свойство prototype, которое при обращении к добавленному конструктору упоминать не надо.
58
Отражение объектов
Механизм отражения позволяет выяснить, какие свойства и методы существуют у объекта.
В JavaScript есть простой способ для этого – это применение цикла for…in.
Например, for (name in obj)
{
var value = obj[name];
document.writeln (name+” ”+ value +”<br>”);
} |
59 |