function getType(attr) {
let type = Object.prototype.toString.call(attr);
let newType = type.substr(8,type.length-9);
return newType;
}
export function StringIfy(obj) {
if(typeof obj !== "object" || getType(obj) === null) {
return String(obj)
}
let json = [];
let arr = obj ? getType(obj) === "Array" : false;
for (let key in obj) {
console.log(key)
if (obj.hasOwnProperty(key)) {
let item = obj[key];
if (getType(obj) === "Object") {
item = StringIfy(item);
}else if (getType(obj) === "Array") {
item = StringIfy(item);
}
json.push((arr ? '"' : '"' + key + '": "') + String(item) + '"');
}
}
console.log(arr,String(json));
return (arr ? "[" : "{") + String(json) + (arr ? "]" : "}");
}
手写 JSON.stringify()
最新推荐文章于 2025-04-16 17:27:05 发布