通过一个函数循环并打印(在html上)一个对象数组


var arr=[{a:2, b:3},{a:3, b:4},{a:4,b:5},] 
function printarr(){
for(var i=0; i<arr.length; i++)
}
document.getElementById("output").innerHTML= printarr(); 

如何打印数组中的每个对象?谢谢我想把它写在html文档上,html已经设置了

var arr=[{a:2, b:3},{c:3, d:4},{d:4,e:5}] 
function printarr(arr){
for(var i=0; i<arr.length; i++){
console.log(arr[i]) // to print whole object
console.log(arr[i].a) // to print only property a
console.log(arr[i].b) // to print only property b
}
} 
printarr(arr);

若要将函数调用的值赋给innerHTML,则需要返回字符串,空循环将不起任何作用。例如:

var arr=[{a:2, b:3},{a:3, b:4},{a:4,b:5},] 
function printarr(){
var output = '';
for(var i=0; i<arr.length; i++) {
// n at the end will not work unless output is pre tag or it have pre css
output += 'a:' + arr[i].a + ', b: ' + arr[i].b + '<br/>';  
}
return output;
}
document.getElementById("output").innerHTML= printarr(); 

您也可以在每个对象上使用JSON.stringify函数,而不是访问.a.b

function printarr(){
var output = '';
for(var i=0; i<arr.length; i++) {
output += JSON.stringify(arr[i]) + '<br/>';
}
return output;
}

您甚至可以将其用于整个阵列:

function printarr(){
return JSON.stringify(arr);
}

JSON.stringify还接受两个额外的参数,如果你想有漂亮的打印(缩进(,你可以使用这个:

function printarr(){
return JSON.stringify(arr, true, 2); // 2 is number of spaces per indent
}

试试这个

arr.forEach((elem)=>console.log(elem))

您就快到了。

var arr=[{a:2, b:3},{c:3, d:4},{d:4,e:5},];
function printarr(){
for(var i=0; i<arr.length; i++){
Console.Writeline(arr[i].a);
Console.Writeline(arr[i].b);
}
} 

最新更新