JSCRIPT MANUAL

Microsoft® JScript™
Встроенные объекты
 Описание JScript 
  Пред 


В Microsoft JScript девять встроенных объектов. Это Array, Boolean, Date, Function, Global, Math, Number, Object и String. Каждый из объектов имеет свои методы и свойства, подробно описанные в справочнике языка. Здесь приводится описание объектов.
Объект Array - Массив
В JScript обработка массивов происходит подобно обработки объектов. Индекс в массиве, эквивалентный свойству объекта, может быть вызван по порядковому номеру (или по имени, ассоциированному с ним). Создания нового массива происходит с помощью оператора new и конструктора Array() (constructor), подобно приведенному ниже примеру.
var theMonths = new Array(12)  {
theMonths[0] = "Jan";
theMonths[1] = "Feb";
theMonths[2] = "Mar";
theMonths[3] = "Apr";
theMonths[4] = "May";
theMonths[5] = "Jun";
theMonths[6] = "Jul";
theMonths[7] = "Aug";
theMonths[8] = "Sep";
theMonths[9] = "Oct";
theMonths[10] = "Nov";
theMonths[11] = "Dec";
}
При создании массива, JScript включает в объект Array свойство размера (length), которое характеризует количество элементов массива. Если массив не имеет элементов, то его размер равен нулю. Если задан номер индекса, размер массива равно ему. В следующем примере

var theMonths = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", 
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec");

var l = theMonths.length;
document.write(l);

размер массива равен 12.
Объект String - Строка
В JScript строки являются объектами. Это означает, что в любой можно объявить переменную строкового типа, либо применить строку-константу, что фактически и происходит при создании нового объекта String. Объект String имеет встроенные методы, которые можно применить при работе со строками. Одним из методов является substring, возвращающий часть строки. Он содержит два аргумента числового типа.
aString = "0123456789";
var aChunk = aString.substring(4, 7);  // aChunk равно "456".
var aNotherChunk = aString.substring(7, 4);  // aNotherChunk равно "456".

// Применение метода в созданном ранее массиве:
firstLetter = theMonths [5].substring(0,1);  // переменной firstLetter присвоено значение "J".
Еще одно свойство объекта String - свойство длины (length) строки, значение которого соответствует количеству символов в строке, значение 0 соответствует пустой строке. Это значение может быть использовано в вычислениях.
var howLong = "Hello World".length  // Возвращает значение 11, которое присваивается переменной howLong.
Объект Math - Математические вычисления
Объект Math включает ряд предопределенных свойств и методов. Свойствами являются определенные числа. Например, число ПИ (приблизительно 3.14159...). Свойство Math.PI используется в приведенном ниже примере.
// Переменная  radius является числовым значением.
var circleArea = Math.PI * radius * radius;  // Вычисление площади круга.
Пример встроенного метода объекта Math: вычисление возведения в степень числа (pow). Приведенный пример использует число ПИ и метод возведения в степень.
// Вычисление объема сферы в зависимости от радиуса.
volume = (4/3)*(Math.PI*Math.pow(radius,3));
Объект Date - Дата
Объект Date применяется для вывода текущей даты, а также для определения разницы между датами. Все значения методов и свойств предопределены. Вообще объект Date позволяет определить день недели; день, месяц, год; а также время в часах, минутах и секундах. Основанием является количество миллисекунд, прошедших с 1-го января 1970 года, 00 ч,00 мин,00.000 сек по GMT. GMT означает "Среднее Время По Гринвичу"; условно UTC, или "Универсальная Координата Времени", являющееся Международным Эталоном Времени.


Предупреждение   В JScript для обработки временных величин до полуночи 1-го января 1970 года нельзя применять объект Date. Для работы с временными данными до 1970 года необходимо написать собственные функции.

Для создания нового объекта Date используется оператор new. В следующем примере для текущего года определяется количество прошедших и оставшихся дней.

/*
В переменной thisIsToday содержится массив для текущего момента.
*/
var thisIsToday = new Date();

var toDay = new Date();  // Текущая дата.

// Определение года, месяца и дня.
var thisYear = toDay.getYear() + 1900;
var thisMonth = theMonths[toDay.getMonth()];
var thisDay = thisMonth  + " " + toDay.getDate() + "," + (parseInt(toDay.getYear()) + 1900);

// Определение количества дней.
thisDay = Math.round(Date.parse(thisDay)/8.64e7);

// То же самое для дня начала текущего года.
var firstDay = "Jan 1, " + thisYear;
firstDay = Math.floor(Date.parse(firstDay)/8.64e7); 

// То же самое для дня конца текущего года.
var lastDay = "Dec 31, " + thisYear;
lastDay = Math.floor(Date.parse(lastDay)/8.64e7);

// Количество дней в году.
var daysInYear = (lastDay - firstDay) + 1;

// Определение количество прошедших и оставшихся дней.
var daysElapsed = thisDay - firstDay;
var daysLeft = daysInYear - daysElapsed; 

// Комментарии.
var comment1 = daysElapsed+ " days have elapsed in the year.";
var comment2 = "That means there are " + daysLeft + " days left in " + thisYear + ".";

// Особые случаи.
if (daysElapsed == 0)  {
comment1 = "Первого Января " + thisYear + " года.";
}
if (daysElapsed == 1) {
comment1 = "Прошел один день.";
}
if(daysElapsed == daysInYear) {
comment1 = thisYear + " закончен.";
}

if (daysLeft == 0)  {
comment2 = "Наилучшие пожелания в Новом Году!";
}
if (daysLeft == 1)  {
comment2 = "Остался один день в " + thisYear + " году.";
}
if (daysLeft == daysInYear)  {
comment2 = "С Новым Годом!";
}
Объект Number - Число
В дополнение к особым числовым свойствам (PI, например), доступным в объекте Math, в Microsoft JScript доступ к некоторым свойствам происходит через объект Number.

СвойствоОписание
MAX_VALUEНаибольшее доступное число - примерно 1.79E+308; положительное или отрицательное. (Значение может изменяться в зависимости от системы.)

MIN_VALUEНаименьшее доступное число - примерно 2.22E-308; положительное или отрицательное. (Значение может изменяться в зависимости от системы.)
NaNСпециальное нечисловое значение, "not a number" - НеЧисло.
POSITIVE_INFINITYЛюбое положительное число, большее Number.MAX_VALUE конвертируется в это значение; представляется как "Inf".
NEGATIVE_INFINITYЛюбое отрицательное число, меньшее -Number.MAX_VALUE конвертируется в это значение; представляется как "-Inf".


Предупреждение   Number.NaN - особое свойство, означающее нечисловое значение - "not a number." Например, деление на нуль возвращает NaN. Попытка использовать строку как число также возвращает Number.NaN. При сравнении NaN не равно ни какому-либо числу, ни самому себе. Следовательно, для проверки на результат NaN, не следует использовать сравнение с Number.NaN; для этого применяется функция isNaN().



Перевод © 2000-2013 pauk R-T-F-M.info. Все права защищены.