Javascript объект date
Содержание:
Date Methods
now() : Number
Returns the number of milliseconds from 01 January, 1970 of the current time in UTC.
var now = Date.now();
console.log(now);
parse(string : String) : Number
Parses into a date and returns the number of milliseconds this date is from 01 January, 1970 UTC. Use to get a Date object from a string.
var d = Date.parse(‘Fri, 01 Jan 1971 00:00:00 GMT’);
console.log(d);
UTC(year : Number, month : Number, ]]]]) : Number
Returns the number of milliseconds fom 01 January, 1970 UTC of the specified date and time in UTC. 0 is January, 1 is February, etc. is the calendar day, starting with 1 and will be at most 31.
JavaScript Date 实例
所有的 实例都继承自 。修改 构造函数的原型对象会影响到所有的 实例。
Getter
- 根据本地时间返回指定日期对象的月份中的第几天(1-31)。
- 根据本地时间返回指定日期对象的星期中的第几天(0-6)。
- 根据本地时间返回指定日期对象的年份(四位数年份时返回四位数字)。
- 根据本地时间返回指定日期对象的小时(0-23)。
- 根据本地时间返回指定日期对象的毫秒(0-999)。
- 根据本地时间返回指定日期对象的分钟(0-59)。
- 根据本地时间返回指定日期对象的月份(0-11)。
- 根据本地时间返回指定日期对象的秒数(0-59)。
- 返回从1970-1-1 00:00:00 UTC(协调世界时)到该日期经过的毫秒数,对于1970-1-1 00:00:00 UTC之前的时间返回负值。
- 返回当前时区的时区偏移。
- 根据世界时返回特定日期对象一个月的第几天(1-31).
- 根据世界时返回特定日期对象一个星期的第几天(0-6).
- 根据世界时返回特定日期对象所在的年份(4位数).
- 根据世界时返回特定日期对象当前的小时(0-23).
- 根据世界时返回特定日期对象的毫秒数(0-999).
- 根据世界时返回特定日期对象的分钟数(0-59).
- 根据世界时返回特定日期对象的月份(0-11).
- 根据世界时返回特定日期对象的秒数(0-59).
- 根据特定日期返回年份 (通常 2-3 位数). 使用 .
Setter
- 根据本地时间为指定的日期对象设置月份中的第几天。
- 根据本地时间为指定日期对象设置完整年份(四位数年份是四个数字)。
- 根据本地时间为指定日期对象设置小时数。
- 根据本地时间为指定日期对象设置毫秒数。
- 根据本地时间为指定日期对象设置分钟数。
- 根据本地时间为指定日期对象设置月份。
- 根据本地时间为指定日期对象设置秒数。
- 通过指定从 1970-1-1 00:00:00 UTC 开始经过的毫秒数来设置日期对象的时间,对于早于 1970-1-1 00:00:00 UTC的时间可使用负值。
- 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。
- 根据世界时设置 Date 对象中的年份(四位数字)。
- 根据世界时设置 Date 对象中的小时 (0 ~ 23)。
- 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。
- 根据世界时设置 Date 对象中的分钟 (0 ~ 59)。
- 根据世界时设置 Date 对象中的月份 (0 ~ 11)。
- 根据世界时设置 Date 对象中的秒钟 (0 ~ 59)。
- setYear() 方法用于设置年份。请使用 方法代替。
Conversion getter
- 以人类易读(human-readable)的形式返回该日期对象日期部分的字符串。
- 把一个日期转换为符合 ISO 8601 扩展格式的字符串。
- 使用 返回一个表示该日期的字符串。为了在 方法中使用。
- 返回一个基于 GMT (UT) 时区的字符串来表示该日期。请使用 方法代替。
- 返回一个表示该日期对象日期部分的字符串,该字符串格式与系统设置的地区关联(locality sensitive)。
- 使用格式字符串将日期转换为字符串。
- 返回一个表示该日期对象的字符串,该字符串与系统设置的地区关联(locality sensitive)。覆盖了 方法。
- 返回一个表示该日期对象时间部分的字符串,该字符串格式与系统设置的地区关联(locality sensitive)。
- 返回一个与等价的原始字符串对象,你可以使用这个值去生成一个新的对象。重写了 这个方法。
- 返回一个表示该日期对象的字符串。覆盖了 方法。
- 以人类易读格式返回日期对象时间部分的字符串。
- 把一个日期对象转换为一个以UTC时区计时的字符串。
- 返回一个日期对象的原始值。覆盖了 方法。
Структура DateTime
Последнее обновление: 18.08.2016
Для работы с датами и временем в .NET предназначена структура DateTime. Она представляет дату и время от 00:00:00 1 января 0001 года
до 23:59:59 31 декабря 9999 года.
Для создания нового объекта DateTime также можно использовать конструктор. Пустой конструктор создает начальную дату:
DateTime date1 = new DateTime(); Console.WriteLine(date1); // 01.01.0001 0:00:00
То есть мы получим минимально возможное значение, которое также можно получить следующим образом:
Console.WriteLine(DateTime.MinValue);
Чтобы задать конкретную дату, нужно использовать один из конструкторов, принимающих параметры:
DateTime date1 = new DateTime(2015, 7, 20); // год - месяц - день Console.WriteLine(date1); // 20.07.2015 0:00:00
Установка времени:
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // год - месяц - день - час - минута - секунда Console.WriteLine(date1); // 20.07.2015 18:30:25
Если необходимо получить текущую время и дату, то можно использовать ряд свойств DateTime:
Console.WriteLine(DateTime.Now); Console.WriteLine(DateTime.UtcNow); Console.WriteLine(DateTime.Today);
Консольный вывод:
20.07.2015 11:43:33 20.07.2015 8:43:33 20.07.2015 0:00:00
Свойство берет текущую дату и время компьютера, — дата и время относительно времени по
Гринвичу (GMT) и — только текущая дата.
При работе с датами надо учитывать, что по умолчанию для представления дат применяется григорианский календарь. Но что будет, если мы захотим получить день недели для
5 октября 1582 года:
DateTime someDate = new DateTime(1582, 10, 5); Console.WriteLine(someDate.DayOfWeek);
Консоль выстветит значение Tuesday, то есть вторник. Однако, как может быть известно из истории, впервые переход с юлианского календаря на григорианский
состоялся в октябре 1582 года. Тогда после даты 4 октября (четверг) (еще по юлианскому календарю) сразу перешли к 15 октября (пятница)(уже по григорианскому календарю).
Таким образом, фактически выкинули 10 дней. То есть после 4 октября шло 15 октября.
В большинстве случаев данный факт вряд ли как-то повлияет на вычисления, однако при работе с очень давними датами данный аспект следует учитывать.
Операции с DateTime
Основные операции со структурой DateTime связаны со сложением или вычитанием дат. Например, надо к некоторой дате прибавить или, наоборот,
отнять несколько дней.
Для добавления дат используется ряд методов:
-
: добавляет дату date
-
: добавляет к текущей дате несколько дней
-
: добавляет к текущей дате несколько часов
-
: добавляет к текущей дате несколько минут
-
: добавляет к текущей дате несколько месяцев
-
: добавляет к текущей дате несколько лет
Например, добавим к некоторой дате 3 часа:
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // 20.07.2015 18:30:25 Console.WriteLine(date1.AddHours(3)); // 20.07.2015 21:30:25
Для вычитания дат используется метод Substract(DateTime date):
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // 20.07.2015 18:30:25 DateTime date2 = new DateTime(2015, 7, 20, 15, 30, 25); // 20.07.2015 15:30:25 Console.WriteLine(date1.Subtract(date2)); // 03:00:00
Здесь даты различаются на три часа, поэтому результатом будет дата «03:00:00».
Метод Substract не имеет возможностей для отдельного вычитания дней, часов и так далее. Но это и не надо, так как мы можем передавать в метод
AddDays() и другие методы добавления отрицательные значения:
// вычтем три часа DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // 20.07.2015 18:30:25 Console.WriteLine(date1.AddHours(-3)); // 20.07.2015 15:30:25
Кроме операций сложения и вычитания еще есть ряд методов форматирования дат:
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); Console.WriteLine(date1.ToLocalTime()); // 20.07.2015 21:30:25 Console.WriteLine(date1.ToUniversalTime()); // 20.07.2015 15:30:25 Console.WriteLine(date1.ToLongDateString()); // 20 июля 2015 г. Console.WriteLine(date1.ToShortDateString()); // 20.07.2015 Console.WriteLine(date1.ToLongTimeString()); // 18:30:25 Console.WriteLine(date1.ToShortTimeString()); // 18:30
Метод преобразует время UTC в локальное время, добавляя смещение относительно времени по Гринвичу.
Метод , наоборот, преобразует локальное время во время UTC, то есть вычитает смещение относительно времени по Гринвичу.
Остальные методы преобразуют дату к определенному формату.
НазадВперед
Форматирование дат и времени
Последнее обновление: 31.10.2015
Для форматирования вывода дат и времени применяется ряд строковых форматов:
Описатель |
Описание |
D |
Поный формат даты. Например, 17 июля 2015 г. |
d |
Краткий формат даты. Например, 17.07.2015 |
F |
Полный формат даты и времени. Например, 17 июля 2015 г. 17:04:43 |
f |
Полный формат даты и краткий формат времени. Например, 17 июля 2015 г. 17:04 |
G |
Краткий формат даты и полный формат времени. Например, 17.07.2015 17:04:43 |
g |
Краткий формат даты и времени. Например, 17.07.2015 17:04 |
M, m |
Формат дней месяца. Например, 17 июля |
O, o |
Формат обратного преобразования даты и времени. Вывод даты и времени в соответствии со стандартом ISO 8601 в формате |
R, r |
Время по Гринвичу. Например, Fri, 17 Jul 2015 17:04:43 GMT |
s |
Сортируемый формат даты и времени. Например, 2015-07-17T17:04:43 |
T |
Полный формат времени. Например, 17:04:43 |
t |
Краткий формат времени. Например, 17:04 |
U |
Полный универсальный полный формат даты и времени. Например, 17 июля 2015 г. 17:04:43 |
u |
Краткий универсальный полный формат даты и времени. Например, 2015-07-17 17:04:43Z |
Y, y |
Формат года. Например, Июль 2015 |
Выведем текущею дату и время во всех форматах:
DateTime now = DateTime.Now; Console.WriteLine("D: " + now.ToString("D")); Console.WriteLine("d: " + now.ToString("d")); Console.WriteLine("F: " + now.ToString("F")); Console.WriteLine("f: {0:f}", now); Console.WriteLine("G: {0:G}", now); Console.WriteLine("g: {0:g}", now); Console.WriteLine("M: {0:M}", now); Console.WriteLine("O: {0:O}", now); Console.WriteLine("o: {0:o}", now); Console.WriteLine("R: {0:R}", now); Console.WriteLine("s: {0:s}", now); Console.WriteLine("T: {0:T}", now); Console.WriteLine("t: {0:t}", now); Console.WriteLine("U: {0:U}", now); Console.WriteLine("u: {0:u}", now); Console.WriteLine("Y: {0:Y}", now);
Консольный вывод:
Настройка формата времени и даты
Не всегда удобно использование встроенных форматов даты и времени. Иногда бывает необходимо задать сообственную форму отображения объекта DateTime.
В этом случае мы можем составить свой формат из описателей:
Описатель |
Описание |
d |
Представляет день месяца от 1 до 31. Одноразрядные числа используются без нуля в начале |
dd |
Представляет день месяца от 1 до 31. К одноразрядным числам в начале добавляется ноль |
ddd |
Сокращенное название дня недели |
dddd |
Полное название дня недели |
f / fffffff |
Представляет миллисекунды. Количество символов f указывает на число разрядов в миллисекундах |
g |
Представляет период или эру (например, «н. э.») |
h |
Часы в виде от 1 до 12. Часы с одной цифрой не дополняются нулем |
hh |
Часы в виде от 01 до 12. Часы с одной цифрой дополняются нулем |
H |
Часы в виде от 0 до 23. Часы с одной цифрой не дополняются нулем |
HH |
Часы в виде от 0 до 23. Часы с одной цифрой дополняются нулем |
K |
Часовой пояс |
m |
Минуты от 0 до 59. Минуты с одной цифрой не дополняются начальным нулем |
mm |
Минуты от 0 до 59. Минуты с одной цифрой дополняются начальным нулем |
M |
Месяц в виде от 1 до 12 |
MM |
Месяц в виде от 1 до 12. Месяц с одной цифрой дополняется начальным нулем |
MMM |
Сокращенное название месяца |
MMMM |
Полное название месяца |
s |
Секунды в виде числа от 0 до 59. Секунды с одной цифрой не дополняются начальным нулем |
ss |
Секунды в виде числа от 0 до 59. Секунды с одной цифрой дополняются начальным нулем |
t |
Первые символы в обозначениях AM и PM |
tt |
AM или PM |
y |
Представляет год как число из одной или двух цифр. Если год имеет более двух цифр, то в результате отображаются только две младшие цифры |
yy |
Представляет год как число из одной или двух цифр. Если год имеет более двух цифр, то в результате отображаются только две младшие цифры. |
yyy |
Год из трех цифр |
yyyy |
Год из четырех цифр |
yyyyy |
Год из пяти цифр. Если в году меньше пяти цифр, то он дополняется начальными нулями |
z |
Представляет смецщение в часах относительно времени UTC |
zz |
Представляет смецщение в часах относительно времени UTC. Если смещение представляет одну цифру, то она дополняется начальным нулем. |
Создадим пару своих форматов:
DateTime now = DateTime.Now; Console.WriteLine(now.ToString("hh:mm:ss")); Console.WriteLine(now.ToString("dd.MM.yyyy"));
Консольный вывод:
05:04:43 17.07.2015
НазадВперед
Date Object Methods
Method | Description |
---|---|
getDate() | Returns the day of the month (from 1-31) |
getDay() | Returns the day of the week (from 0-6) |
getFullYear() | Returns the year |
getHours() | Returns the hour (from 0-23) |
getMilliseconds() | Returns the milliseconds (from 0-999) |
getMinutes() | Returns the minutes (from 0-59) |
getMonth() | Returns the month (from 0-11) |
getSeconds() | Returns the seconds (from 0-59) |
getTime() | Returns the number of milliseconds since midnight Jan 1 1970, and a specified date |
getTimezoneOffset() | Returns the time difference between UTC time and local time, in minutes |
getUTCDate() | Returns the day of the month, according to universal time (from 1-31) |
getUTCDay() | Returns the day of the week, according to universal time (from 0-6) |
getUTCFullYear() | Returns the year, according to universal time |
getUTCHours() | Returns the hour, according to universal time (from 0-23) |
getUTCMilliseconds() | Returns the milliseconds, according to universal time (from 0-999) |
getUTCMinutes() | Returns the minutes, according to universal time (from 0-59) |
getUTCMonth() | Returns the month, according to universal time (from 0-11) |
getUTCSeconds() | Returns the seconds, according to universal time (from 0-59) |
getYear() | Deprecated. Use the getFullYear() method instead |
now() | Returns the number of milliseconds since midnight Jan 1, 1970 |
parse() | Parses a date string and returns the number of milliseconds since January 1, 1970 |
setDate() | Sets the day of the month of a date object |
setFullYear() | Sets the year of a date object |
setHours() | Sets the hour of a date object |
setMilliseconds() | Sets the milliseconds of a date object |
setMinutes() | Set the minutes of a date object |
setMonth() | Sets the month of a date object |
setSeconds() | Sets the seconds of a date object |
setTime() | Sets a date to a specified number of milliseconds after/before January 1, 1970 |
setUTCDate() | Sets the day of the month of a date object, according to universal time |
setUTCFullYear() | Sets the year of a date object, according to universal time |
setUTCHours() | Sets the hour of a date object, according to universal time |
setUTCMilliseconds() | Sets the milliseconds of a date object, according to universal time |
setUTCMinutes() | Set the minutes of a date object, according to universal time |
setUTCMonth() | Sets the month of a date object, according to universal time |
setUTCSeconds() | Set the seconds of a date object, according to universal time |
setYear() | Deprecated. Use the setFullYear() method instead |
toDateString() | Converts the date portion of a Date object into a readable string |
toGMTString() | Deprecated. Use the toUTCString() method instead |
toISOString() | Returns the date as a string, using the ISO standard |
toJSON() | Returns the date as a string, formatted as a JSON date |
toLocaleDateString() | Returns the date portion of a Date object as a string, using locale conventions |
toLocaleTimeString() | Returns the time portion of a Date object as a string, using locale conventions |
toLocaleString() | Converts a Date object to a string, using locale conventions |
toString() | Converts a Date object to a string |
toTimeString() | Converts the time portion of a Date object to a string |
toUTCString() | Converts a Date object to a string, according to universal time |
UTC() | Returns the number of milliseconds in a date since midnight of January 1, 1970, according to UTC time |
valueOf() | Returns the primitive value of a Date object |
Установка компонентов даты
Следующие методы позволяют устанавливать компоненты даты и времени:
- (устанавливает всю дату по миллисекундам с 01.01.1970 UTC)
Все они, кроме , обладают также UTC-вариантом, например: .
Как видно, некоторые методы могут устанавливать несколько компонентов даты одновременно, в частности, . При этом если какая-то компонента не указана, она не меняется. Например:
Автоисправление – очень удобное свойство объектов . Оно заключается в том, что можно устанавливать заведомо некорректные компоненты (например 32 января), а объект сам себя поправит.
Неправильные компоненты даты автоматически распределяются по остальным.
Например, нужно увеличить на 2 дня дату «28 февраля 2011». Может быть так, что это будет 2 марта, а может быть и 1 марта, если год високосный. Но нам обо всем этом думать не нужно. Просто прибавляем два дня. Остальное сделает :
Также это используют для получения даты, отдалённой от имеющейся на нужный промежуток времени. Например, получим дату на 70 секунд большую текущей:
Можно установить и нулевые, и даже отрицательные компоненты. Например:
Когда объект используется в числовом контексте, он преобразуется в количество миллисекунд:
Важный побочный эффект: даты можно вычитать, результат вычитания объектов – их временная разница, в миллисекундах.
Это используют для измерения времени:
Допустим, у нас есть несколько вариантов решения задачи, каждый описан функцией.
Как узнать, какой быстрее?
Для примера возьмём две функции, которые бегают по массиву:
Чтобы померить, какая из них быстрее, нельзя запустить один раз , один раз и замерить разницу. Одноразовый запуск ненадёжен, любая мини-помеха исказит результат.
Для правильного бенчмаркинга функция запускается много раз, чтобы сам тест занял существенное время. Это сведёт влияние помех к минимуму. Сложную функцию можно запускать 100 раз, простую – 1000 раз…
Померяем, какая из функций быстрее:
Теперь представим себе, что во время первого бенчмаркинга компьютер что-то делал параллельно важное (вдруг) и это занимало ресурсы, а во время второго – перестал. Реальная ситуация? Конечно реальна, особенно на современных ОС, где много процессов одновременно
Гораздо более надёжные результаты можно получить, если весь пакет тестов прогнать много раз.
Более точное время с
В современных браузерах (кроме IE9-) вызов performance.now() возвращает количество миллисекунд, прошедшее с начала загрузки страницы. Причём именно с самого начала, до того, как загрузился HTML-файл, если точнее – с момента выгрузки предыдущей страницы из памяти.
Так что это время включает в себя всё, включая начальное обращение к серверу.
Его можно посмотреть в любом месте страницы, даже в , чтобы узнать, сколько времени потребовалось браузеру, чтобы до него добраться, включая загрузку HTML.
Возвращаемое значение измеряется в миллисекундах, но дополнительно имеет точность 3 знака после запятой (до миллионных долей секунды!), поэтому можно использовать его и для более точного бенчмаркинга в том числе.
и
Для измерения с одновременным выводом результатов в консоли есть методы:
- – включить внутренний хронометр браузера с меткой.
- – выключить внутренний хронометр браузера с меткой и вывести результат.
Параметр используется для идентификации таймера, чтобы можно было делать много замеров одновременно и даже вкладывать измерения друг в друга.
В коде ниже таймеры , – конкретные тесты, а таймер «All Benchmarks» – время «на всё про всё»:
При запуске этого примера нужно открыть консоль, иначе вы ничего не увидите.
Внимание, оптимизатор!
Современные интерпретаторы JavaScript делают массу оптимизаций, например:
- Автоматически выносят инвариант, то есть постоянное в цикле значение типа , за пределы цикла.
- Стараются понять, значения какого типа хранит данная переменная или массив, какую структуру имеет объект и, исходя из этого, оптимизировать внутренние алгоритмы.
- Выполняют простейшие операции, например сложение явно заданных чисел и строк, на этапе компиляции.
- Могут обнаружить, что некий код, например присваивание к неиспользуемой локальной переменной, ни на что не влияет и вообще исключить его из выполнения, хотя делают это редко.
Эти оптимизации могут влиять на результаты тестов, поэтому измерять скорость базовых операций JavaScript («проводить микробенчмаркинг») до того, как вы изучите внутренности JavaScript-интерпретаторов и поймёте, что они реально делают на таком коде, не рекомендуется.
JS Tutorial
JS HOMEJS IntroductionJS Where ToJS OutputJS StatementsJS SyntaxJS CommentsJS VariablesJS OperatorsJS ArithmeticJS AssignmentJS Data TypesJS FunctionsJS ObjectsJS EventsJS StringsJS String MethodsJS NumbersJS Number MethodsJS ArraysJS Array MethodsJS Array SortJS Array IterationJS DatesJS Date FormatsJS Date Get MethodsJS Date Set MethodsJS MathJS RandomJS BooleansJS ComparisonsJS ConditionsJS SwitchJS Loop ForJS Loop WhileJS BreakJS Type ConversionJS BitwiseJS RegExpJS ErrorsJS ScopeJS HoistingJS Strict ModeJS this KeywordJS LetJS ConstJS Arrow FunctionJS DebuggingJS Style GuideJS Best PracticesJS MistakesJS PerformanceJS Reserved WordsJS VersionsJS Version ES5JS Version ES6JS JSON
Get a Date
The required format parameter of the date() function specifies how to format the date
(or time).
Here are some characters that are commonly used for dates:
- d — Represents the day of the month (01 to 31)
- m — Represents a month (01 to 12)
- Y — Represents a year (in four digits)
- l (lowercase ‘L’) — Represents the day of the week
Other characters, like»/», «.», or «-» can also be inserted between the
characters to add additional formatting.
The example below formats today’s date in three different ways:
Example
<?phpecho «Today is » . date(«Y/m/d») . «<br>»;echo «Today is » . date(«Y.m.d») . «<br>»;echo «Today is » . date(«Y-m-d») . «<br>»;
echo «Today is » . date(«l»);?>
JS Учебник
JS ГлавнаяJS ВведениеJS УстановкаJS ВыводJS СинтаксисJS ЗаявленияJS КомментарииJS ПеременныеJS ОператорыJS АрифметикаJS ПрисваиванияJS Типы данныхJS ФункцииJS ОбъектыJS ОбластьJS СобытияJS СтрокиJS Методы строкJS ЧислаJS Методы чиселJS МассивыJS Методы массиваJS Сортировка массиваJS Итерация массиваJS ДатыJS Формат датыJS Метод получения датJS Методы набора…JS Математические…JS Случайные числаJS БулевыJS Сравнение…JS Заявления if…elseJS Заявление switchJS Цикл forJS Цикл whileJS Заявление break…JS Преобразование…JS Битовые…JS Регулярные выраженияJS ОшибкиJS ОтладчикJS ПодъемныйJS СтрогийJS Ключевое слово thisJS Руководство стиляJS ПрактикаJS Распространенные ошибкиJS ЭффективностьJS Зарезервированные словаJS ВерсииJS Версия ES5JS Версия ES6JS JSON
Mô tả
- Nếu không có các đối số được cung cấp, các hàm khởi tạo tạo đối tượng JavaScript với ngày và giờ hiện tại theo các cài đặt hệ thống.
- Nếu có ít nhất hai đối số được cung cấp, thiếu các đối số được đặt thành 1 (nếu thiếu ngày) hoặc 0 cho tất cả các đối số khác.
- Ngày JavaScript được dựa trên giá trị thời gian là mili giây kể từ nửa đêm 01 tháng 1 năm 1970 UTC. Một ngày giữ 86.400.000 mili giây. Phạm vi đối tượng JavaScript là -100.000.000 ngày đến 100.000.000 ngày liên quan đến ngày 01 tháng 1 năm 1970 UTC.
- Đối tượng JavaScript Date cung cấp hành vi thống nhất giữa các nền tảng. Giá trị thời gian có thể được truyền giữa các hệ thống để tạo ra một ngày đại diện cho cùng một thời điểm trong thời gian.
- Đối tượng JavaScript hỗ trợ một số phương pháp UTC (phổ quát), cũng như các phương pháp thời gian địa phương. UTC, còn được gọi là Greenwich Mean Time (GMT), nghĩa là thời gian theo World Time Standard (Tiêu chuẩn Thời gian Thế giới). Thời gian địa phương là thời gian được biết đến với máy tính nơi thực hiện lệnh JavaScript.
Create a Date From a String With strtotime()
The PHP function is used to convert a human readable
date string into a
Unix timestamp (the number of seconds since January 1 1970 00:00:00 GMT).
strtotime(time, now)
The example below creates a date and time from the function:
Example
<?php$d=strtotime(«10:30pm April 15 2014»);echo «Created date is » . date(«Y-m-d h:i:sa», $d);?>
PHP is quite clever about converting a string to a date, so you can put in
various values:
Example
<?php$d=strtotime(«tomorrow»);echo date(«Y-m-d h:i:sa», $d) . «<br>»;$d=strtotime(«next Saturday»);echo date(«Y-m-d h:i:sa», $d) . «<br>»;$d=strtotime(«+3 Months»);echo date(«Y-m-d h:i:sa», $d) . «<br>»;?>
However, is not perfect, so remember to check the strings you put in there.
SQL References
SQL Keywords
ADD
ADD CONSTRAINT
ALTER
ALTER COLUMN
ALTER TABLE
ALL
AND
ANY
AS
ASC
BACKUP DATABASE
BETWEEN
CASE
CHECK
COLUMN
CONSTRAINT
CREATE
CREATE DATABASE
CREATE INDEX
CREATE OR REPLACE VIEW
CREATE TABLE
CREATE PROCEDURE
CREATE UNIQUE INDEX
CREATE VIEW
DATABASE
DEFAULT
DELETE
DESC
DISTINCT
DROP
DROP COLUMN
DROP CONSTRAINT
DROP DATABASE
DROP DEFAULT
DROP INDEX
DROP TABLE
DROP VIEW
EXEC
EXISTS
FOREIGN KEY
FROM
FULL OUTER JOIN
GROUP BY
HAVING
IN
INDEX
INNER JOIN
INSERT INTO
INSERT INTO SELECT
IS NULL
IS NOT NULL
JOIN
LEFT JOIN
LIKE
LIMIT
NOT
NOT NULL
OR
ORDER BY
OUTER JOIN
PRIMARY KEY
PROCEDURE
RIGHT JOIN
ROWNUM
SELECT
SELECT DISTINCT
SELECT INTO
SELECT TOP
SET
TABLE
TOP
TRUNCATE TABLE
UNION
UNION ALL
UNIQUE
UPDATE
VALUES
VIEW
WHERE
MySQL Functions
String Functions
ASCII
CHAR_LENGTH
CHARACTER_LENGTH
CONCAT
CONCAT_WS
FIELD
FIND_IN_SET
FORMAT
INSERT
INSTR
LCASE
LEFT
LENGTH
LOCATE
LOWER
LPAD
LTRIM
MID
POSITION
REPEAT
REPLACE
REVERSE
RIGHT
RPAD
RTRIM
SPACE
STRCMP
SUBSTR
SUBSTRING
SUBSTRING_INDEX
TRIM
UCASE
UPPER
Numeric Functions
ABS
ACOS
ASIN
ATAN
ATAN2
AVG
CEIL
CEILING
COS
COT
COUNT
DEGREES
DIV
EXP
FLOOR
GREATEST
LEAST
LN
LOG
LOG10
LOG2
MAX
MIN
MOD
PI
POW
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SUM
TAN
TRUNCATE
Date Functions
ADDDATE
ADDTIME
CURDATE
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
CURTIME
DATE
DATEDIFF
DATE_ADD
DATE_FORMAT
DATE_SUB
DAY
DAYNAME
DAYOFMONTH
DAYOFWEEK
DAYOFYEAR
EXTRACT
FROM_DAYS
HOUR
LAST_DAY
LOCALTIME
LOCALTIMESTAMP
MAKEDATE
MAKETIME
MICROSECOND
MINUTE
MONTH
MONTHNAME
NOW
PERIOD_ADD
PERIOD_DIFF
QUARTER
SECOND
SEC_TO_TIME
STR_TO_DATE
SUBDATE
SUBTIME
SYSDATE
TIME
TIME_FORMAT
TIME_TO_SEC
TIMEDIFF
TIMESTAMP
TO_DAYS
WEEK
WEEKDAY
WEEKOFYEAR
YEAR
YEARWEEK
Advanced Functions
BIN
BINARY
CASE
CAST
COALESCE
CONNECTION_ID
CONV
CONVERT
CURRENT_USER
DATABASE
IF
IFNULL
ISNULL
LAST_INSERT_ID
NULLIF
SESSION_USER
SYSTEM_USER
USER
VERSION
SQL Server Functions
String Functions
ASCII
CHAR
CHARINDEX
CONCAT
Concat with +
CONCAT_WS
DATALENGTH
DIFFERENCE
FORMAT
LEFT
LEN
LOWER
LTRIM
NCHAR
PATINDEX
QUOTENAME
REPLACE
REPLICATE
REVERSE
RIGHT
RTRIM
SOUNDEX
SPACE
STR
STUFF
SUBSTRING
TRANSLATE
TRIM
UNICODE
UPPER
Numeric Functions
ABS
ACOS
ASIN
ATAN
ATN2
AVG
CEILING
COUNT
COS
COT
DEGREES
EXP
FLOOR
LOG
LOG10
MAX
MIN
PI
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SQUARE
SUM
TAN
Date Functions
CURRENT_TIMESTAMP
DATEADD
DATEDIFF
DATEFROMPARTS
DATENAME
DATEPART
DAY
GETDATE
GETUTCDATE
ISDATE
MONTH
SYSDATETIME
YEAR
Advanced Functions
CAST
COALESCE
CONVERT
CURRENT_USER
IIF
ISNULL
ISNUMERIC
NULLIF
SESSION_USER
SESSIONPROPERTY
SYSTEM_USER
USER_NAME
MS Access Functions
String Functions
Asc
Chr
Concat with &
CurDir
Format
InStr
InstrRev
LCase
Left
Len
LTrim
Mid
Replace
Right
RTrim
Space
Split
Str
StrComp
StrConv
StrReverse
Trim
UCase
Numeric Functions
Abs
Atn
Avg
Cos
Count
Exp
Fix
Format
Int
Max
Min
Randomize
Rnd
Round
Sgn
Sqr
Sum
Val
Date Functions
Date
DateAdd
DateDiff
DatePart
DateSerial
DateValue
Day
Format
Hour
Minute
Month
MonthName
Now
Second
Time
TimeSerial
TimeValue
Weekday
WeekdayName
Year
Other Functions
CurrentUser
Environ
IsDate
IsNull
IsNumeric
SQL OperatorsSQL Data TypesSQL Quick Ref
2.7 Класс DateFormat
Помните, когда мы выводили дату на экран, отображалось что-то типа «Thu Feb 21 14:01:34 EET 2019». Вроде бы все правильно, но это скорее отображение даты для программиста. А для пользователя хотелось бы отображать дату попонятнее. Что-нибудь типа «Вторник, 21 Февраля».
И без года. Ну или с годом, если надо. В общем, хотелось бы отображать дату разными способами.
Для этого есть специальный класс — .
Пример
Код | Вывод на экран |
---|---|
Видите, что программа вывела на экран: Jun-04-2005. Совсем не то, что раньше.
А все дело в том, что мы отображали не сам объект , а специальную строку, полученную вызовом метода у объекта типа . Но ключевое здесь даже не это.
Когда объект создается, в него в виде параметров мы передаем строку «MMM-dd-YYYY». Вот в этой строке и зашифрован формат даты, который вы увидели в итоге на экране.
- MMM значит вывести название месяца, сокращенное до трех букв
- dd — вывести день месяца
- YYYY — вывести год, состоящий из четырех цифр
Если мы хотим вывести месяц в виде цифр, нужно вместо MMM написать MM написать «MM-dd-YYYY»: на экран будет выведено 06-04-2005
Более детально мы разберём этот класс позднее.
JavaScript
JS Array
concat()
constructor
copyWithin()
entries()
every()
fill()
filter()
find()
findIndex()
forEach()
from()
includes()
indexOf()
isArray()
join()
keys()
length
lastIndexOf()
map()
pop()
prototype
push()
reduce()
reduceRight()
reverse()
shift()
slice()
some()
sort()
splice()
toString()
unshift()
valueOf()
JS Boolean
constructor
prototype
toString()
valueOf()
JS Classes
constructor()
extends
static
super
JS Date
constructor
getDate()
getDay()
getFullYear()
getHours()
getMilliseconds()
getMinutes()
getMonth()
getSeconds()
getTime()
getTimezoneOffset()
getUTCDate()
getUTCDay()
getUTCFullYear()
getUTCHours()
getUTCMilliseconds()
getUTCMinutes()
getUTCMonth()
getUTCSeconds()
now()
parse()
prototype
setDate()
setFullYear()
setHours()
setMilliseconds()
setMinutes()
setMonth()
setSeconds()
setTime()
setUTCDate()
setUTCFullYear()
setUTCHours()
setUTCMilliseconds()
setUTCMinutes()
setUTCMonth()
setUTCSeconds()
toDateString()
toISOString()
toJSON()
toLocaleDateString()
toLocaleTimeString()
toLocaleString()
toString()
toTimeString()
toUTCString()
UTC()
valueOf()
JS Error
name
message
JS Global
decodeURI()
decodeURIComponent()
encodeURI()
encodeURIComponent()
escape()
eval()
Infinity
isFinite()
isNaN()
NaN
Number()
parseFloat()
parseInt()
String()
undefined
unescape()
JS JSON
parse()
stringify()
JS Math
abs()
acos()
acosh()
asin()
asinh()
atan()
atan2()
atanh()
cbrt()
ceil()
cos()
cosh()
E
exp()
floor()
LN2
LN10
log()
LOG2E
LOG10E
max()
min()
PI
pow()
random()
round()
sin()
sqrt()
SQRT1_2
SQRT2
tan()
tanh()
trunc()
JS Number
constructor
isFinite()
isInteger()
isNaN()
isSafeInteger()
MAX_VALUE
MIN_VALUE
NEGATIVE_INFINITY
NaN
POSITIVE_INFINITY
prototype
toExponential()
toFixed()
toLocaleString()
toPrecision()
toString()
valueOf()
JS OperatorsJS RegExp
constructor
compile()
exec()
g
global
i
ignoreCase
lastIndex
m
multiline
n+
n*
n?
n{X}
n{X,Y}
n{X,}
n$
^n
?=n
?!n
source
test()
toString()
(x|y)
.
\w
\W
\d
\D
\s
\S
\b
\B
\0
\n
\f
\r
\t
\v
\xxx
\xdd
\uxxxx
JS Statements
break
class
continue
debugger
do…while
for
for…in
for…of
function
if…else
return
switch
throw
try…catch
var
while
JS String
charAt()
charCodeAt()
concat()
constructor
endsWith()
fromCharCode()
includes()
indexOf()
lastIndexOf()
length
localeCompare()
match()
prototype
repeat()
replace()
search()
slice()
split()
startsWith()
substr()
substring()
toLocaleLowerCase()
toLocaleUpperCase()
toLowerCase()
toString()
toUpperCase()
trim()
valueOf()
Access date components
There are methods to access the year, month and so on from the object:
- getFullYear()
- Get the year (4 digits)
- getMonth()
- Get the month, from 0 to 11.
- getDate()
- Get the day of month, from 1 to 31, the name of the method does look a little bit strange.
- getHours(), getMinutes(), getSeconds(), getMilliseconds()
- Get the corresponding time components.
Not , but
Many JavaScript engines implement a non-standard method . This method is deprecated. It returns 2-digit year sometimes. Please never use it. There is for the year.
Additionally, we can get a day of week:
- getDay()
- Get the day of week, from (Sunday) to (Saturday). The first day is always Sunday, in some countries that’s not so, but can’t be changed.
All the methods above return the components relative to the local time zone.
There are also their UTC-counterparts, that return day, month, year and so on for the time zone UTC+0: getUTCFullYear(), getUTCMonth(), getUTCDay(). Just insert the right after .
If your local time zone is shifted relative to UTC, then the code below shows different hours:
Besides the given methods, there are two special ones that do not have a UTC-variant:
- getTime()
-
Returns the timestamp for the date – a number of milliseconds passed from the January 1st of 1970 UTC+0.
- getTimezoneOffset()
-
Returns the difference between UTC and the local time zone, in minutes: