LeetCode/js/convert-object-to-json-string.js

26 lines
668 B
JavaScript
Raw Normal View History

/**
* @param {any} object
* @return {string}
*/
var jsonStringify = function(object) {
switch (typeof object) {
case 'boolean':
case 'number':
return `${object}`;
case 'string':
return `"${object}"`;
case 'object':
if (Array.isArray(object)) {
return `[${object.map(jsonStringify).join(',')}]`;
}
if (object) {
let nested = Object.keys(object).map(key => `"${key}":${jsonStringify(object[key])}`);
return `{${nested.join(',')}}`;
}
return 'null';
default:
return '';
}
};