JS метод Date.toJSON()
Загальний опис
Метод Date.prototype.toJSON() дозволяє конвертувати об’єкти Date у рядковий формат JSON, забезпечуючи зручний обмін даними між клієнтською та серверною частиною веб-додатків. Метод особливо корисний, коли потрібно відправити дані серверу або зберегти їх у локальному сховищі у форматі, який легко інтерпретується та обробляється.
Date.prototype.toJSON() примінюється для трансформації об'єкта дати у рядок у відповідності до формату JSON, який є ідеальним для передачі даних через HTTP. Для оптимальної роботи цього методу, важливо правильно ініціалізувати дату.
При використанні методу Date.prototype.toJSON(), об'єкт Date конвертується в рядок у форматі ISO 8601, наприклад "2023-09-25T14:15:35Z", що відображає UTC час. Ось приклад використання:
let date = new Date('2023-09-25T14:15:35Z');
console.log(date.toJSON()); // Виведе: "2023-09-25T14:15:35.000Z"
У контексті веб-розробки, основні сфери застосування Date.prototype.toJSON() включають роботу з API, серверами, базами даних, а також для локального зберігання інформації. Метод стає незамінним, коли вам потрібно передавати дані між різними сервісами та платформами, які підтримують формат JSON.
Основною особливістю цього методу є те, що він виводить дату та час у міжнародному форматі, що забезпечує уніфікацію данних, що передаються. Важливо зазначити, що при використанні цього методу немає необхідності у подальшій конвертації чи форматуванні дати, оскільки рядок вже готовий до передачі або зберігання.
Ще одна особливість полягає у тому, що Date.prototype.toJSON() автоматично враховує часові зони та конвертує дату та час до UTC, тому розробникам не потрібно турбуватися про конвертацію часових зон вручну.
| Нотатка: | Пам'ятайте, що використання   | 
				
| Нотатка: | Професіоналам можна використовувати   | 
				
| Порада: | Коли ви працюєте із датами, завжди переконайтеся, що об'єкт   | 
				
| Порада: | Враховуйте, що метод  
 | 
				
Синтаксис
toJSON()
	Параметри
Return
stringПовертає рядок, який представляє задану дату в форматі рядка дати та часу згідно з універсальним часом, або
null, якщо дата є недійсною. Для дійсних дат значення, що повертається, є таким самим, як і у методіtoISOString().
Переглядачі
| Переглядач | |||||
|---|---|---|---|---|---|
3  | 
																	1  | 
																	4  | 
																	10.5  | 
																	12  | 
															
| Переглядач | ||||
|---|---|---|---|---|
37  | 
																	18  | 
																	4  | 
																	3.2  | 
															
| Переглядач | ||
|---|---|---|
0.10.0  | 
																	1.0  | 
															
Приклади
Цей приклад демонструє, як конвертувати введену користувачем дату в рядок у форматі JSON, використовуючи метод Date.prototype.toJSON(). Користувач може вибрати дату за допомогою поля вводу та натиснути кнопку для конвертації вибраної дати в JSON, результат буде відображено на веб-сторінці.
				У цьому прикладі ми створюємо новий об'єкт дати, який представляє поточну дату і час, використовуючи конструктор Date. Після цього ми конвертуємо цей об'єкт дати в рядок формату JSON за допомогою методу Date.prototype.toJSON(). Результат – рядкове представлення дати в міжнародному форматі та часовій зоні UTC – виводиться в консоль.
// Створення нового об'єкта дати
let currentDate = new Date();
// Використання методу toJSON для отримання рядкового представлення дати у форматі JSON
let jsonDate = currentDate.toJSON();
// Виводимо результат в консоль
console.log(jsonDate);  // Приклад виводу: "2023-09-25T14:36:45.000Z"
				У другому прикладі ми створюємо об'єкт specificDate, ініціалізуючи його конкретною датою та часом. Далі ми перевіряємо, чи є дата дійсною, використовуючи умову if (!isNaN(specificDate)). Якщо дата є дійсною, ми конвертуємо її в формат JSON за допомогою методу toJSON() і виводимо результат в консоль. У випадку недійсної дати виводиться повідомлення про помилку.
// Створення об'єкта дати з конкретною датою
let specificDate = new Date('2023-12-25T12:00:00');
// Перевірка чи дата дійсна
if (!isNaN(specificDate)) {
  // Конвертація дійсної дати в JSON формат
  let jsonSpecificDate = specificDate.toJSON();
  console.log(jsonSpecificDate); // "2023-12-25T12:00:00.000Z"
} else {
  // Вивід повідомлення про помилку, якщо дата недійсна
  console.log('Введено недійсну дату');
}
				