За замовчуванням, JSON.stringify(value)
серіалізує всі доступні властивості обʼєкта value
.
const tools = [
{
title: 'You Might Not Need jQuery',
summary: 'Колекція JavaScript-альтернатив до jQuery методів',
url: 'https://youmightnotneedjquery.com/'
},
{
title: 'JavaScript Visualizer',
summary: 'Інтерактивний візуалізатор стеку викликів, замикань, подій',
url: 'https://www.jsv9000.app/'
},
{
title: 'Regex 101',
summary: 'Редактор регулярних виразів з поясненнями та прикладами',
url: 'https://regex101.com/'
}
]
Якщо просто викликати JSON.stringify(tools)
, то ви отримаєте повну JSON-структуру:
JSON.stringify(tools);
/*
[
{
"title": "You Might Not Need jQuery",
"summary": "...",
"url": "..."
},
{
"title": "JavaScript Visualizer",
"summary": "...",
"url": "..."
},
{
"title": "Regex 101",
"summary": "...",
"url": "..."
}
]
*/
Але якщо вам потрібно вибрати лише конкретні властивості, скористайтесь другим параметром у JSON.stringify
:
// Тільки заголовки
JSON.stringify(tools, ['title']);
// Заголовки та посилання
JSON.stringify(tools, ['title', ['url']]);
Цей прийом зручний для:
- обмеження обсягу виводу
- приховати приватні або зайві дані
- фільтрація перед збереженням/передачею на сервер