Javascript 如何打印一个数组的值,该数组位于另一个数组中,而不是;[对象]”;
因此,我有一系列“会话”: 该课程有一系列评分:Javascript 如何打印一个数组的值,该数组位于另一个数组中,而不是;[对象]”;,javascript,arrays,node.js,Javascript,Arrays,Node.js,因此,我有一系列“会话”: 该课程有一系列评分: function Rating(evaluator,ratingValue) { this.ratingId; this.ratingValue = ratingValue; this.evaluator = evaluator; this.evaluatedSession; } 如果我打印我的“会话”数组,我会得到以下示例: [Session { title: 'Javasession', speaker: '
function Rating(evaluator,ratingValue) {
this.ratingId;
this.ratingValue = ratingValue;
this.evaluator = evaluator;
this.evaluatedSession;
}
如果我打印我的“会话”数组,我会得到以下示例:
[Session {
title: 'Javasession',
speaker: 'JavaSpeaker ',
id: 1,
ratings: [[Object], [Object]],
currentRatingId: 2,
currentSessionState: 2
},
Session {
title: 'C#Session',
speaker: 'C#Speaker',
id: 2,
ratings: [[Object]],
currentRatingId: 1,
currentSessionState: 2
}]
正如您所看到的,数组“session”中的数组不会打印对象。它只打印“[对象]”
是否可以打印另一个数组中每个数组的值而不使用任何循环(for、foreach) 您可以使用方法将其打印为字符串
示例:
const arr=[
{
斯巴鲁:[
{
子潜艇:[
{
a:1
}
]
}
]
}
];
const res=JSON.stringify(arr);
控制台日志(res)代码>您可以在浏览器中使用
const arr=[
{
斯巴鲁:[
{
子潜艇:[
{
a:1
}
]
}
]
}
];
dir(arr,{depth:null})
您可以将console.dir
与{depth:null}
使用简化阵列:
let sessions = [ Session: { ratings: [ {Rating: 1}, {Rating: 2} ] } ];
运行console.log(会话)代码>结果为:
[ { Session: { ratings: [Object] } } ]
[ { Session: { ratings: [ { Rating: 1 }, { Rating: 2 } ] } } ]
运行console.dir(会话,{depth:null})
会导致:
[ { Session: { ratings: [Object] } } ]
[ { Session: { ratings: [ { Rating: 1 }, { Rating: 2 } ] } } ]
您可以尝试console.log(JSON.stringify(sessions))代码>@JochenBedersdorfer-hanks有效。但“问题”是它打印的不是很“好”。它只需在一行中打印所有内容,这使得它非常不可读console.log(JSON.stringify(sessions,null.))
如果您希望以格式打印,可以使用JSON.stringify(arr,null,2)代码>@Mohamedabas,谢谢你,它很有效。但“问题”是它打印的不是很“好”。它只是把所有的东西都打印在一行中,这使得它非常简单unreadable@KeyNavas不客气,您可能需要传递@Andrew Lohr提到的null,2
值。因此,您的代码将是const res=JSON.stringify(arr,null,2)代码>