Записки погромиста

Записки погромиста на вольные темы

Немного о JSON.stringify API

Как вы знаете, для того, что бы успешно сохранить объект для временного хранения в localStorage или пересылки на сервер, нам нужно сериализовать его в строку. Для этого используется метод stringify.

Параметр space

В качестве параметра свойства space  можно передать не только число, которое задает количество отступов, но так же строку или символ табуляции \t.

JSON.stringify({ a: 2 }, null, ' ');
// '{
//  "a": 2
// }
JSON.stringify({ uno: 1, dos: 2 }, null, '\t');
// вернёт строку:
// '{
// 	"uno": 1,
// 	"dos": 2
// }'

Параметр replacer

В этот параметр в качестве аргумента можно передать как функцию, так и массив.

var foo = { foundation: 'Mozilla', model: 'box', week: 45, transport: 'car', month: 7 };

JSON.stringify(foo, function(key, value) {
  if (typeof value === 'string') {
    return undefined; // удаляем все строковые свойства
  }
  return value;
});  // '{"week":45,"month":7}'

JSON.stringify(foo, ['week', 'month']);
// '{"week":45,"month":7}', сохранились только свойства week и month

Published by

Оставьте комментарий