Поскольку объекты JavaScript состоят из атрибутов в виде пар ключ-значение, заключенных в фигурные скобки, преобразование в строку должно быть корректным, особенно если нужна возможность обратного конвертирования. Преобразование может пригодиться, когда речь идет о хранении данных в локальном хранилище или базе данных.

Существуют различные способы преобразования объекта JavaScript в строку.

JSON.stringify()

Это мощная и часто используемая функция для преобразования объекта в строку JSON.

let object = {
  name: 'Иван',
  age: 45,
  friends: ['Петр', 'Олег']
};
JSON.stringify(object);  // '{"name":"Иван","age":45,"friends":["Петр","Олег"]}'

Object.entries()

Object.entries() - это встроенная функция JavaScript, которая разбивает объект на массив из пар ключ-значение. Как следствие, мы можем перебрать такой массив и вручную преобразовать объект JavaScript в строку. С чем нужно определиться - какой разделитель будет между парами и элементами пар.

let object = {
  name: 'Иван',
  age: 45
};
let arrayOfArrays = Object.entries(object);  // [['name', 'Иван'], ['age', 45]]
let arrayOfStrings = arrayOfArrays.map( item => item.join(':'));  // ['name:Иван', 'age:45']
let string = arrayOfStrings.join(',');  // 'name:Иван,age:45'

let searchParameters = '?' + Object.entries(object).map( item => item.join('=')).join('&');  // '?name=Иван&age=45'

Object.keys()

Object.keys() возвращает массив, содержащий все ключи объекта. После мы можем перебрать их с помощью цикла и сформировать строчную версию объекта.

let object = {
  name: 'Иван',
  age: 45
};
let arrayOfKeys = Object.keys(object);  // ['name', 'age']

let string = '';
for (key of arrayOfKeys) {
    string += `${key}:${object[key]},`;
};
console.log(string);  // => 'name:Иван,age:45,'