Новые Возможности в Этой Версии
JavaScript версии 1.3 имеет следующие нововведения и улучшения:
-
Соответствие ECMA. JavaScript 1.3 полностью совместим с ECMA-262. См. детали в книге
Клиентский JavaScript. Руководство.
-
Поддержка Unicode. Набор символов Unicode может использоваться для всех известных символов, и Вы можете использовать escape-последовательности Unicode в строковых литералах. См. escape и unescape. См. книгу
Клиентский JavaScript. Руководство.
-
Изменения в объекте Array.
-
Если Вы специфицируете единственный числовой параметр в конструкторе Array, Вы тем самым специфицируете начальный размер массива.
-
Метод push возвращает новый размер массива, а не последний добавленный в массив элемент.
-
Метод splice всегда возвращает массив, содержащий удалённые элементы, даже если удаляется только один элемент.
-
Метод toString объединяет массив и возвращает строку, содержащую все элементы массива, разделённые запятыми, а не строку, представляющую исходный код массива.
-
Свойство length содержит беззнаковое 32-битное целое число, имеющее значение меньше 232.
- Изменения в объекте Date.
-
Устранена зависимость от платформы, что даёт универсальное поведение на всех платформах.
-
Изменён диапазон дат: от -100,000,000 до 100,000,000 относительно даты 01 января 1970 UTC.
-
Добавлен параметр milliseconds в конструктор Date.
-
Добавлены методы getFullYear, setFullYear, getMilliseconds и setMilliseconds.
-
Добавлены методы getUTCDate, getUTCDay, getUTCFullYear, getUTCHours, getUTCMilliseconds, getUTCMinutes, getUTCMonth, getUTCSeconds, setUTCDate, setUTCFullYear, setUTCHours, setUTCMilliseconds, setUTCMinutes, setUTCMonth, setUTCSeconds и toUTCString.
-
Добавлен параметр в метод setMonth. -
Добавлены параметры minutes, seconds и milliseconds в метод setHours.
-
Добавлены параметры seconds и milliseconds в метод setMinutes.
-
Добавлен параметр milliseconds в метод setSeconds.
-
Добавлен параметр milliseconds в метод UTC.
-
Не рекомендуются методы getYear, setYear и toGMTString.
- Изменения в объекте Function.
-
Добавлен метод apply, который позволяет примерять метод одного объекта в контексте другого объекта (вызывающего объекта).
-
Добавлен метод call, который позволяет вызывать (выполнять) метод одного объекта в контексте другого объекта (вызывающего объекта).
-
Не рекомендуется свойство arguments.caller.
- Изменения в объекте String.
-
Методы charCodeAt и fromCharCode используют значения Unicode, а не ISO-Latin-1.
-
Метод replace поддерживает вложение функций вместо второго аргумента.
- Новый метод toSource. Метод toSource возвращает строку, представляющую исходный код объекта. См. Array.toSource, Boolean.toSource, Date.toSource, Function.toSource, Number.toSource, Object.toSource, RegExp.toSource и String.toSource.
-
Новые свойства верхнего уровня: Infinity, NaN и undefined. Infinity это числовое значение, представляющее бесконечность. NaN это значение, представляющее Not-A-Number/Не-Число. undefined это значение undefined/неопределённое.
-
Новая функция верхнего уровня isFinite. isFinite вычисляет аргумент, чтобы определить, является ли он конечным числом.
-
Изменения в функции верхнего уровня eval. Нельзя использовать функцию eval неявно, вызывая её по имени, отличному от eval.
- Новые операции строго равенства: === и !==. Операция === (строго равно) возвращает true, если операнды равны и имеют один тип. Операция !== (строго не равно) возвращает true, если операнды не равны и/или разных типов. См. "Операции Сравнения" и "Использование Операций Равенства".
-
Изменения в операциях == и !=. Использование операций == (равно) и != (не равно) вернулось к тому, что было в JavaScript 1.1. Если два операнда имеют разные типы, JavaScript пытается конвертировать операнды в подходящий тип для проведения сравнения. См. "Использование Операций Равенства".
-
Изменения в поведении проверки условия.
-
Вы не должны использовать простые присвоения в условном операторе; например, не специфицируйте условие if(x = y). Предыдущие версии JavaScript конвертировали if(x = y) в (x == y), но 1.3 генерирует ошибку времени выполнения. См. "if...else".
-
Любой объект, значение которого не undefined или null, включая объект Boolean, значение которого false, вычисляется в true при передаче в условный оператор. См. "Boolean".
-
Консоль JavaScript. Консоль JavaScript это окно, выводящее все сообщения об ошибках JavaScript. Когда возникает ошибка JavaScript, сообщение об этом направляется на консоль JavaScript, и никакие диалоги не выводятся. См.
Клиентский JavaScript. Руководство.
Содержание раздела