How to print values of a object in JavaScript?
本问题已经有最佳答案,请猛点这里访问。
我有个东西
1 2 3 4 5 6 7 | var friends = { bill: { firstName:"A", lastName:"C", number:"999", }, }; |
如何使用
1 2 3 4 5 6 7 8 9 10 11 12 | var friends = { bill: { firstName:"A", lastName:"C", number:"999", }, print: function () { for (var p in this.bill) console.log(p + ' ' + this.bill[p]); } }; |
这个代码会打印出来,你需要吗?
1 | friends.print(); |
我将提出一个建议,可能会使您的编码更容易一些。不要使用对象来包含朋友列表,而是使用数组。数组毕竟是一个列表,javascript附带了一些非常有用的数组函数,从长远来看可以帮助您。
4要获取朋友列表,您可以使用两个循环;一个循环对象列表,另一个循环每个对象的属性:
1 2 3 4 5 6 7 | function listFriends() { for (var i = 0, l = friends.length; i < l; i++) { for (var p in friends[i]) { console.log(p + ': ' + friends[i][p]); } } } |
或者将HTML导出:
1 2 3 4 5 6 7 8 9 10 | function listFriends() { var html = ''; for (var i = 0, l = friends.length; i < l; i++) { html += '' + friends[i].firstName + '<br/>'; for (var p in friends[i]) { html += p.toUpperCase() + ': ' + friends[i][p] + '<br/>'; } } return html; } |
您可能还希望访问朋友列表以找到一个特别的朋友。在这个例子中,我使用
1 2 3 4 5 6 7 | function getFriend(prop, value) { return friends.filter(function (obj) { return obj[prop] === value; }); } console.log(getFriend('firstName', 'Sam')) // { name="Sam Y", firstName="Sam", lastName="Y"} |
小提琴。
希望你能找到一些有用的。
如果您只想打印
1 2 | for(var p in friends.bill) console.log(p +":" + friends.bill[p]) |
在控制台中打印:
1 2 3 | firstName: A VM579:3 lastName: C VM579:3 number: 999 |