簡體   English   中英

在下一行(新行)中顯示嵌套對象的屬性

[英]Display nested objects properties in next (new) line

我有一組對象,其中有子對象(嵌套對象)。 整個結構看起來與此相似(所有子對象具有相同的標簽,只有值不同):

           var arr = [
                obj0 = {

                    subObj0: {
                        name: "John",
                        lastName: "Doe",
                        age: 50,
                        nick: "JD",
                        phone: 123456
                    },
                    subObj1: {
                        name: "Jane",
                        lastName: "Dee",
                        age: 30,
                        nick: "lady",
                        phone: 654098
                    },
                    subObj2: {
                        name: "Ash",
                        lastName: "Bash",
                        age: 33,
                        nick: "asdB",
                        phone: 987123
                    }
                },
                obj1 = {
                    subObj0: {
                        name: "Asd",
                        lastName: "Dsa",
                        age: 10,
                        nick: "none",
                        phone: 12
                    },
                    subObj1: {
                        name: "Ivy",
                        lastName: "Mash",
                        age: 3,
                        nick: "IvMash",
                        phone: 9823
                    }

                }

            ];

我試圖像這樣在控制台中顯示這些子對象:

for (index in arr)
{
    for (index2 in arr[index])
    {
        console.log(JSON.stringify(arr[index][index2],null,4));
    }
}

,它為我提供了包含這些對象和子對象的樹的輸出。

每個子對象都在換行符中時如何在控制台中顯示它,如下所示?

在此處輸入圖片說明

因此,如果沒有逗號和雙引號,則只能使用“標簽:值”形式。

很少replace()應該這樣做。 單擊運行按鈕以查看結果。

 var arr = [ { subObj0: { name: "John", lastName: "Doe", age: 50, nick: "JD", phone: 123456 }, subObj1: { name: "Jane", lastName: "Dee", age: 30, nick: "lady", phone: 654098 }, subObj2: { name: "Ash", lastName: "Bash", age: 33, nick: "asdB", phone: 987123 } }, { subObj0: { name: "Asd", lastName: "Dsa", age: 10, nick: "none", phone: 12 }, subObj1: { name: "Ivy", lastName: "Mash", age: 3, nick: "IvMash", phone: 9823 } } ]; var output = []; arr.forEach(function (obj, i) { output.push('obj' + i + ':'); for (var key in obj) { var value = obj[key]; var str = JSON.stringify(value) .replace(/[{}"]/g, '') // remove {} and " .replace(/[,]/g, '\\t') // replace commas by tabulations .replace(/:/g, ': '); // add a nice space after : output.push(key + ': ' + str); } }) output = output.join('\\n'); console.log(output); document.write('<pre>' + output + '</pre>'); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM