В будущих версиях JavaScript может появиться поддержка десятичных чисел' лишенная описанных недостатков, связанных с округлением. Но до тех пор для важных финансовых расчетов предпочтительнее будет использовать масштабируемые целые числа. Например, финансовые расчеты можно производить в копейках, а не в долях рублей.
В базовом языке JavaScript имеется конструктор Date() для создания объектов, представляющих дату и время. Эти объекты Date обладают методами для выполнения простых вычислений с участием дат. Объект Date не является фундаментальным типом данных, как числа. Этот раздел представляет собой краткое пособие по работе с датами. Полное описание можно найти в справочном разделе:
var then = new Date(2010, 0, 1); // Первый день первого месяца 2010 года
var later = new Date(2010, 0, 1, 17, 10, 30);// Та же дата, в 17:10:30 локального времени
var now = new Date();// Текущие дата и время
var elapsed = now - then; // Разность дат: интервал в миллисекундах
later.getFullYear()// => 2010
later.getMonth() // => 0: счет месяцев начинается с нуля
later.getDate() // => 1: счет дней начинается с единицы
later.getDay() // => 5: день недели. 0 - воскр., 5 - пяти.
later.getHours() // => 17: 17 часов локального времени
later.getUTCHours() // часы по UTC; зависит от часового пояса
later.toStrlng()
// => "Fri Jan 01 2010 17:10:30 GMT+0300"
later.toUTCString() // => "Fri, 01 Jan 2010 14:10:30 GMT"
later.toLocaleDateString() // => "1 Январь 2010 г."
later.toLocaleTimeString() // => "17:10:30"
later.toIS0String() // => "2010-01-01T14:10:30.000Z"
Строка - это неизменяемая, упорядоченная последовательность 16-битных значений, каждое из которых обычно представляет символ Юникода. Строки в JavaScript являются типом данных, используемым для представления текста. Длина строки - это количество 16-битных значений, содержащихся в ней. Нумерация символов в строках (и элементов в массивах) в языке JavaScript начинается с нуля: первое 16-битное значение находится в позиции 0, второе - в позиции 1 и т. д. Пустая строка - это строка, длина которой равна 0. В языке JavaScript нет специального типа для представления единственного элемента строки. Для представления единственного 16-битного значения просто используется строка с длиной, равной 1.
3.2.1. Строковые литералы
Чтобы включить литерал строки в JavaScript-программу, достаточно просто заключить символы строки в парные одинарные или двойные кавычки (' или "). Символы двойных кавычек могут содержаться в строках, ограниченных символами одинарных кавычек, а символы одинарных кавычек - в строках, ограниченных символами двойных кавычек. Ниже приводятся несколько примеров строковых литералов:
// Это пустая строка: в ней ноль символов
'testing'
"3.14"
'name="myform"'
"Вы предпочитаете книги издательства O'Reilly, не правда ли?"
"В этом строковом литерале\nдве строки”
"пи - это отношение длины окружности к ее диаметру"
В ECMAScript 3 строковые литералы должны записываться в одной строке программы и не могут разбиваться на две строки. Однако в ECMAScript 5 строковые литералы можно разбивать на несколько строк, заканчивая каждую строку, кроме последней, символом обратного слэша (\). Ни один из символов обратного слэша, как и следующие за ними символы перевода строки, не будут включены в строковый литерал. Чтобы включить в строковый литерал символ перевода строки, следует использовать последовательность символов \п (описывается ниже):
"две\пстроки" // Строковый литерал, представляющий две строки
"одна\ // Одна строка, записанная в трех строках. Только в ECMAScript 5
длинная\
строка"
Символы, кодовые пункты и строки JavaScript
Для представления символов Юникода в языке JavaScript используется кодировка UTF-16, а строки JavaScript являются последовательностями 16-битных значений без знака. Большинство наиболее часто используемых символов Юникода (из «основной многоязыковой матрицы») имеют кодовые пункты, умещающиеся в 16 бит, и могут быть представлены единственным элементом строки. Символы Юникода, кодовые пункты которых не умещаются в 16 бит, кодируются в соответствии с правилами кодировки UTF-16 как последовательности (известные как «суррогатные пары») из двух 16-битных значений. Это означает, что строка JavaScript, имеющая длину, равную 2 (два 16-битных значения), может представлять единственный символ Юникода:
Читать дальше
Конец ознакомительного отрывка
Купить книгу