У меня есть проект, который требует от меня преобразовать объект в строку без использования stringify. Целью этого является реализация рекурсивной функции, которая преобразует объект в строку. Кажется, у меня есть 2 проблемы:Реализация рекурсивной функции, которая преобразует объект в строку в javascript
1) Моя функция для вывода объекта как строки, кажется, выводит первое значение, а не остальное.
function myToString(argObj) {
var str = "";
for (var val in argObj) {
if (argObj.hasOwnProperty(val)) {
str += val + " : " + argObj[val] + "\n";
console.log(str);
}
return str;
}
}
2) Мое понимание выше в цикле, будет то, что он будет печатать каждый ключ/значение пары в объекте, но это только делает это в первый ключ/значение. Используя рекурсию, как я могу заставить это работать над каждой парой ключ/значение.
Одна из первых вещей, которые нужно изменить - это избавиться от 'document.write()'. Если вы хотите отслеживать выполнение кода, используйте 'console.log()', который записывается в консоль разработчика. – Pointy
Оператор возврата должен быть перенесен в последнюю строку. В противном случае он запускается только один раз для инструкции for. – ybdesire
Не успел бы заняться отладчиком эй? –