으으으으으으');
함수 형식(객체) {
결과 = ""로 두십시오;
ProcessObject(객체, 2);
함수 processObject(객체, 깊이, isObjectValue = false, TrailingComma = "") {
if (배열 . isArray (객체)) {
결과 += `${isObjectValue ? " " : "
" + " ".repeat(깊이 - 2)}[`;
for (let i = 0; i < object.length; i++) {
const 요소 = 객체[i],
TrailingComma = i + 1 === object.length ? "": ",";
스위치(요소 유형) {
사례 "객체":
processObject(요소, 깊이 + 2, false, TrailingComma);
나머지;
사례 "문자열":
결과 += `< object.length; i++) {
const 元素 = 对象[i],
TrailingComma = i + 1 === object.length ? “”:“,”;
switch(元素类型){
案例“对象”:
processObject(元素, 深度 + 2, false, TrailingComma);
休息;
案例“字符串”:
结果 += `
${" ".repeat(깊이)}"${element}"${trailingComma}`;
나머지;
사건 번호':
결과 += `
${" ".repeat(깊이) + 요소}${trailingComma}`;
나머지;
}
}
결과 += `
${" ".repeat(깊이 - 2)}]${trailingComma}`;
} 다른 {
결과 += `${isObjectValue ? " " : "
" + " ".repeat(깊이 - 2)}{`;
keyIndex = 0,
keyCount = Object.keys(객체).length;
for(객체의 키) {
const 값 = 객체[키],
후행 쉼표 = ++keyIndex === keyCount ? "": ",";
스위치(값 유형){
사례 "객체":
결과 += `
${" ".repeat(깊이)}"${key}":`;
processObject(value, 깊이 + 2, true, TrailingComma);
나머지;
사례 "문자열":
결과 += `
${" ".repeat(깊이)}"${key}": "${value}"${trailingComma}`;
나머지;
사건 번호':
결과 += `
${" ".repeat(깊이)}"${key}": ${value}${trailingComma}`;
나머지;
}
}
결과 += `
${" ".repeat(깊이 - 2)}}${trailingComma}`;
}
}
결과를 반환합니다.
}
회신하다
0