Стандартные функции верхнего уровня




Стандартные объекты и функции

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

Объект Array

В JavaScript нет типа данных массив, но с помощью объекта Array можно создавать массивы в приложениях и манипулировать ими. Методы этого объекта позволяют сортировать, объединять, записывать в обратном порядке содержимое массивов и выполнять многие другие действия.

Массив создается оператором new и конструктором массива — системной функцией Array, инициализирующей элементы массива. Создать массив можно одной из следующих конструкций:

/* обычный синтаксис */

var array = [ elem0, elem1, elem2,... ]

var empty = []

/* Синтаксис с new Array() */

var array = new Array(elem0, elem1, elem2,...)

var empty = new Array()

/* Редкий синтаксис: аргумент new Array - одно число.

При этом создается массив заданной длины,

все значения в котором undefined */

var array = new Array(10)

Для получения значения элемента массива необходимо в квадратных скобках рядом с именем массива указать порядковый номер элемента.

а[0] = "1"; а[1]=2;

с = b[2]*c[3];

В JavaScript нумерация элементов массивов начинается с нуля. Пример создания массива:

arrayl = new Array ("Первый", "Второй", "Третий");

Для задания массивов нескольких размерностей следует значениям элементов массивов присваивать массивы.

а = new Array ()

for (i=0; i < 4; i++) {

a[i] = new Array ()

for (j=0; j < 4; j++) {

a[i] [j] = "["+i+","+j+"]"

}

}

Здесь в первом операторе определяется массив а. Далее в цикле элементы этого одномерного массива сами определяются как массивы, элементам которых присваиваются значения. Таким образом создается двумерный массив.

Свойства объекта Array

Свойство Описание
index Псевдо-свойство массива, созданного в результате сравнения на соответствие регулярному выражению. Для такого массива данное свойство содержит индекс найденного соответствия в исследуемой строке.
input Псевдо-свойство массива, созданного в результате сравнения на соответствие регулярному выражению. Для такого массива данное свойство содержит строку, над которой производили сравнение.
length Длина массива: число, на единицу превосходящее максимальный индекс массива

 

Методы объекта Array

Метод Действие
concat Объединяет массивы в один: array.concat(value1, value2,..., valueN) value1, value2,... - массивы или значения для присоединения
join Соединяет все элементы массива в одну строку: arrayObj.join([glue]) Glue - строковый аргумент, с помощью которого будут соединены в строку все элементы массива. Если аргумент не задан, элементы будут соединены запятыми
pop Удаляет последний элемент из массива и возвращает его значение
push Добавляет один или несколько элементов в конец массива и возвращает новую длину массива
reverse Переставляет элементы массива в обратном порядке: первый элемент становится последним, а последний первым. Возвращает ссылку на измененный массив
shift Удаляет первый элемент массива и возвращает его значение
slice Создает сечение массива в виде нового массива: arrayObj.slice(start[, end]) Start - индекс элемента в массиве, с которого будет начинаться новый. End - необязательный параметр. Индекс элемента в массиве, на котором новый массив завершится. При этом последним в новом массиве будет элемент с индексом end-1. Если start отрицателен, то он будет трактоваться как arrayObj.length+start (т.е. start'ый элемент с конца массива). Если end отрицателен, то он будет трактоваться как arrayObj.length+end (т.е. end'ый элемент с конца массива). Если второй параметр не указан, то экстракция продолжится до конца массива. Если end < start, то будет создан пустой массив. Данный метод не изменяет исходный массив, а просто возвращает его часть.
splice Добавляет и/или удаляет элементы из массива. arrayObj.splice(start, deleteCount, [elem1[, elem2[,...[, elemN]]]]). Start - индекс в массиве, с которого начинать удаление. deleteCount - кол-во элементов, которое требуется удалить, начиная с индекса start. IE: если этот параметр не указан, то ни одни элемент не будет удалён. Firefox: если этот параметр не указан, то будут удалены все элементы, начиная с индекса start. Opera: если этот параметр не указан, то будут удалён 1 элемент, имеющий индекс start+1. В этом же случае вместо удалённого элемента будет возвращена пустая строка. elem1, elem2,..., elemN - добавляемые элементы в массив. Добавление начинается с позиции start.
sort Сортирует элементы массива возвращает новый массив. Данный метод изменяет исходный массив.
unshift Добавляет один или более элементов в начало массива и возвращает новую длину

Например: метод array1.concat(array2).sort() объединит два массива в один новый и отсортирует его.

 

Объект Date

Для представления дат в программе JavaScript используется объект Date. Он создается, как и любой объект в JavaScript, оператором new с помощью конструктора Date. Синтаксис оператора создания даты следующий:

имя объекта дата = new Date ([параметры]);

Если в конструкторе даты отсутствуют параметры, то значением объекта будет текущая дата. Параметром конструктора может быть строка Вида "месяц день, год часы:минуты:секунды". Ниже представлены три способа инициализации объекта Date:

today = new Date()

Xmas = new Date("January 7 1999 12:00:00")

Xmas = new Date(99, 1, 7)

Xmas = new Date(99, 1, 7, 12, 0, 0)

В общем виде:

dateObj = new Date(dateVal)

dateObj = new Date(year, month, date[, hours, minutes, seconds, ms])

Аргументы:

dateVal – если параметр является числовым, то он интерпретируется как количество миллисекунд от 1-Янв-1970 00:00. Если строкой, то она разбирается и интерпретируется как дата по стандартным правилам Date.parse.

year – год в формате YYYY

month – месяц от 0 (Янв) до 11 (Дек)

date – день месяца от 1 до 31

hours – параметр должен быть указан, если указан параметр minutes. Устанавливает кол-во часов от 0 до 23

minutes – параметр должен быть указан, если указан параметр seconds. Устанавливает количество минут: от 0 до 59

seconds – параметр должен быть указан, если указан параметр ms. Устанавливает количество секунд: от 0 до 59

ms – количество миллисекунд: от 0 до 999.

 

Дата измеряется в миллисекундах, начиная от полуночи 01 января 1970 года GMT+0. День содержит 86,400,000 миллисекунд.

Методами объекта Date можно получать и устанавливать отдельно значения года, месяца, дня недели, часов, минут и секунд. Например, метод getYear() возвращает год, метод setYear() устанавливает значение года объекта Date. Метод getTime () возвращает число миллисекунд, прошедшее с момента времени 1 января 1970 года 00:00:00, метод setTime() устанавливает соответствующее значение даты в миллисекундах, заданных в качестве параметра.

Методы объекта Date

Метод Описание
Date.parse получает строку с датой (напр. "Jan 03, 2000") и возвращает целое число, представляющее собой количество миллисекунд, истекших с полуночи 1 января 1970 года
toLocaleString возвращает String-объект, содержащий дату в длинном формате по умолчанию
getDate Возвращает целое число от 1 до 31
getDay возвращает целое число, обозначающее день недели: 0 - воскресенье, 1 - понедельник, 2 - вторник, и т.д.
getFullYear Возвращает полное значение года. Для дат от 1000 до 9999 года getFullYear возвращает четырёхзначное число
getMilliseconds Возвращает целое число от 0 до 999
getMinutes Возвращает целое число от 0 до 59
getSeconds Возвращает целое число от 0 до 59
getTimezoneOffset Смещение часового пояса равняется разнице между универсальным (UTC) и местным временем в минутах
getUTCDate Возвращает целое число от 1 до 31
getUTCDay возвращает целое число, обозначающее день недели: 0 - воскресенье, 1 - понедельник, 2 - вторник, и т.д.
getUTCHours Возвращает целое число от 0 до 23
getHours Возвращает целое число от 0 до 23
getUTCMilliseconds Возвращает целое число от 0 до 999
getUTCMinutes Возвращает целое число от 0 до 59
getUTCSeconds Возвращает целое число от 0 до 59
setSeconds Устанавливает секунды от 0 до 59
setFullYear setFullYear(yearValue[, monthValue[, dayValue]])
setMilliseconds Устанавливает миллисекунды от 0 до 999
setTime Устанавливает дату по количеству миллисекунд, прошедших с полуночи 1 января 1970 года по универсальному времени
setYear Устанавливает год по двузначному значению (не рекомендуется)
setDate Устанавливает день от 1 до 31
setUTCDate Устанавливает день от 1 до 31
setUTCHours setUTCHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])
setHours setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])
setUTCMilliseconds Устанавливает миллисекунды от 0 до 999
setUTCMinutes setUTCMinutes(minutesValue[, secondsValue[, msValue]])
setMinutes setMinutes(minutesValue[, secondsValue[, msValue]])
setMonth setMonth(monthValue[, dayValue])
setUTCSeconds Устанавливает секунды от 0 до 59
setUTCFullYear setUTCFullYear(yearValue[, monthValue[, dayValue]])
setUTCMonth setUTCMonth(monthValue[, dayValue]) monthValue - значение от 0 до 11, обозначающее месяц от января до декабря; dayValue -значение от 1 до 31, обозначающее день месяца
toGMTString возвращает строку, содержащее текстовое представление даты и времени по Гринвичу на английском языке в американском формате (не рекомендуется)
toLocaleFormat Выводит дату на основании предложенного формата
toLocaleTimeString Выводит местное время
toLocaleDateString Выводит дату
toString всегда возвращает строку, представляющую дату на английском языке в американском формате
toTimeString Выводит время и часовой пояс
toDateString Выводит дату без времени
toUTCString возвращает строку на английском языке в американском формате, согласно универсальному часовому поясу (Гринвичу)
getUTCFullYear Возвращает полное значение года
getMonth Возвращает целое число от 0 до 11. 0 соответствует январю, 1 - февралю, и т.д.
Date.UTC Date.UTC(year, month, day[, hours[, minutes[, seconds[,ms]]]]) Year - год. Если он меньше 100, то к нему прибавляется 1900. Month - номер месяца в диапазоне от 0 до 11 (0 = январь, 1 = февраль,..., 11 = декабрь). Date - день месяца в диапазоне от 1 до 31. Hours - число от 0 до 23 (от полуночи до 23:00), представляющее час. Применяется, если указывается аргумент minutes. Minutes - число от 0 до 59, представляющее минуты. Применяется, если указывается аргумент seconds. Seconds - число от 0 до 59, представляющее секунды. Ms - число от 0 до 999, представляющее миллисекунды. Метод UTC возвращает количество миллисекунд, истекших с полуночи 1 января 1970 года и указанной датой, используя время в формате UTC.
getUTCMonth Возвращает целое число от 0 до 11. 0 соответствует январю, 1 - февралю, и т.д.
getTime возвращает число, равное количеству миллисекунд, прошедших с полуночи 1 января 1970 года GMT
valueOf функционально эквивалентен методу getTime. Этот метод является служебным и обычно не вызывается явно в коде.
getYear возвращает значение года минус 1900 (не рекомендован)

Методы UTC работают для зоны GTC (по Гринвичу).

 

Объект Math

В свойствах объекта Math хранятся основные математические константы, а

его методы вычисляют основные математические функции. При обращении

к свойствам и методам этого объекта создавать его не надо, но следует явно

указывать его имя Math. Например, в свойстве PI хранится значение числа л

и использовать его в программе можно в виде Math.pi.

Методы этого объекта включают процедуры вычисления тригонометриче-

ских, экспоненциальных, логарифмических и других математических функ-

ций.

Свойства объекта Math

Свойство Описание
Math.E   Константа Эйлера, основание натурального логарифма. Приблизительно 2.718.
Math.LN2 Натуральный логарифм 2, приблизительно 0.693.
Math.LOG2E Логарифм E по основанию 2, приблизительно 1.442
Math.LOG10E Логарифм E по основанию 10, приблизительно 0.434
Math.PI   Отношение длины окружности к ее диаметру, приблизительно 3.14159.
Math.SQRT12 Квадратный корень из 1/2; иначе говоря, 1 поделить на корень из 2, приблизительно 0.707.
Math.SQRT2 Квадратный корень из 2, приблизительно 1.414.
Math.LN10 Натуральный логарифм 10, приблизительно 2.302.

 

Методы объекта Math

Метод Описание
abs Абсолютное значение
sin, cos, tan Стандартные тригонометрические функции; аргумент задается в радианах
acos, asin, atan Обратные тригонометрические функции
exp, log Экспоненциальная функция и функция натурального логарифма
ceil Наименьшее целое, большее или равное значению аргумента
floor Наибольшее целое, меньшее или равное значению аргумента
min, max Наибольшее или наименьшее значение двух аргументов
pow Показательная функция: pow (x, у) =ху
round Округление аргумента до ближайшего целого
sqrt Квадратный корень

Объект String

Когда переменной присваивается строковый литерал, она становится, как указывалось выше в разделе "Переменные и литералы", строковой переменной. На самом деле JavaScript не поддерживает строковых типов, а создает стандартный объект string. Таким образом, любая строковая переменная или строковый литерал является объектом string, к которому могут быть применены соответствующие методы этого объекта. Можно явно создать строковый объект, используя ключевое слово new и конструктор string, как показано ниже:

имя_объекта = new String(строка);

Параметром конструктора является любая допустимая строка. Например:

myString = new String("Строка");

Объект string имеет единственное свойство length, хранящее длину строки, содержащейся в строковом объекте. Так, и "строка". length, и myString.length возвращают одинаковые значения 6, равные в первом случае длине строкового литерала, а во втором случае длине строки, содержащейся в строковом объекте.

Объект string имеет два типа методов: первые непосредственно влияют на саму строку, например метод substring, а вторые возвращают отформатированный HTML вариант строки, например метод bold. Некоторым методам необходимы параметры. Так, метод получения подстроки требует задания двух целых чисел, определяющих позиции начала и конца ПОДСТРОКИ, например substring (2, 7). Методы, возвращающие HTML-отформатированные варианты строк, соответствуют тэгам форматирования HTML. Например, следующий оператор вставляет в страницу HTML связь с ресурсом, расположенным по адресу, задаваемому параметром метода link:

document.write(s.link("https://www.bhv.com"));

В документе отобразится содержимое строкового объекта s, представленное как связь с соответствующим ресурсом.

Методы объекта string

Метод Действие
anchor Создает именованную ссылку
big, blink, bold, fixed, italics, small, strike, sub, sup Создает строку в формате HTML
charAt, charCodeAt Возвращает символ или код символа, параметр определяет позицию символа в строке от 0 до length-1
indexOf, lastlndexOf Возвращает позицию в строке заданной подстроки: str.lastIndexOf(searchValue[, fromIndex]). indexOf – ищет сначала. lastlndexOf – ищет с конца строки.
link Создает гиперсвязь
concat Конкатенация строк: result = string1.concat(string2, string3[,..., stringN])
split Преобразует строковый объект в массив строк, разбивая строку на подстроки: var arr = str.split([separator][, limit]); Separator – разделитель, limit – максимальное число добавляемых элементов массива
slice var sub = string.slice(beginSlice[, endSlice]) beginSlice - позиция, начиная от 0, с которой начинается участок endSlice - позиция, на которой заканчивается участок Метод slice возвращает часть строки от beginSlice до endSlice, но не включая символ под номером endSlice, не меняя вызывающую строку.
substring, substr Возвращают подмножество строки, заданное либо началом и концом, либо началом и числом символов
match, replace, search Используются для работы с регулярными выражениями
toLowerCase, toUpperCase Переводят содержимое строк в верхний или в нижний регистр соответственно
String.fromCharCode String.fromCharCode(num1,..., numN) num1,..., numN последовательность кодов Unicode-символов. Этот метод возвращает элементарную строку, а не объект типа String.

 

Стандартные функции верхнего уровня

В добавление к стандартным объектам существует несколько функций, для вызова которых не надо создавать никакого объекта. Они находятся вне иерархии объектов JavaScript на так называемом "верхнем уровне".

Полезными при разработке приложений могут оказаться две функции, производящие "синтаксический" анализ своих аргументов: parseFloat и parseInt. Функция parseFloat (параметр) анализирует значение переданного ей строкового параметра на соответствие представлению вещественного числа в JavaScript. Если в строке при последовательном просмотре обнаруживается символ, отличный от символов, применяемых для формирования вещественных литералов (знаки + и -, десятичные цифры, точка и символы (е) или (Е)), то она игнорирует оставшуюся часть строки и возвращает то числовое значение, которое ею обнаружено до неправильного символа. Если первый символ в строке не является цифрой, она возвращает значение "NaN" (Not a Number — не число).

Аналогично функция parseint(строка, [основание]) пытается возвратить целое число по заданному вторым параметром основанию. Если первый символ в строке не является цифрой, она также возвращает значение "NaN". Эти функции полезны при анализе введенных пользователем данных в полях формы до передачи их на сервер.

Функции Number (объект) и string (объект) преобразуют объект, заданный в качестве его параметра в число или строку.

Функция isNaN(параметр) тестирует значение своего параметра на соответствие нечисловому значению. Если ее параметр действительно оказывается не числом, она возвращает true, в противном случае — false.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-10-12 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: