如何在JavaScript中解析多行对象数组并循环展示内容?
解决数组对象循环解析并展示内容的问题
嘿,我懂你碰到的麻烦了——你现在直接用alert(student[i])弹出的是[object Object],根本看不到对象里的具体信息对吧?这是因为JavaScript里直接把对象传给alert()的话,它会默认把对象转换成字符串,结果就是这个通用的[object Object],不会显示内部属性。
下面给你几种实用的解决办法,按需选择就行:
1. 手动拼接属性字符串(自定义展示格式)
如果你想要按照自己的格式展示每个学生的信息,可以逐个访问对象的属性,把它们拼接成可读的字符串:
var student = [ {name:"alan",title:"al",platform:"test1",orderNumber:1 }, {name:"frank",title:"fr", platform:"test2",orderNumber:1}, {name:"bryan",title:"br", platform:"test3",orderNumber:1} ]; // for循环版本 for (var i = 0; i < student.length; ++i) { var info = `姓名:${student[i].name},头衔:${student[i].title},平台:${student[i].platform},订单号:${student[i].orderNumber}`; window.alert(info); } // forEach循环版本(更简洁) student.forEach(function(item) { var info = `姓名:${item.name},头衔:${item.title},平台:${item.platform},订单号:${item.orderNumber}`; window.alert(info); });
2. 用JSON.stringify快速查看完整对象(调试用)
如果只是想快速查看对象的所有内容,不需要自定义格式,用JSON.stringify()是最省事的,它能把整个对象转换成格式清晰的JSON字符串:
// for循环版本 for (var i = 0; i < student.length; ++i) { // 第三个参数2是设置缩进,让输出的JSON更易读 window.alert(JSON.stringify(student[i], null, 2)); } // forEach箭头函数版本(更简洁) student.forEach(item => window.alert(JSON.stringify(item, null, 2)));
这样运行之后,你就能看到每个学生对象里的具体数据啦!
内容的提问来源于stack exchange,提问作者Zako
相关产品推荐
相关产品推荐

