我正在尝试构建并显示基于数组的表格。我已经搜索了相当长一段时间,但似乎无法找到我的代码为何无法工作的答案。
这是一个简单的函数调用,其中通过函数参数传入一个数组,但由于某种原因,它显示为未定义,因为数组似乎没有传递到函数参数。
我的代码的基本摘要如下:
<div id="myDiv"></div>
<script>
function myFunction(tableData){
var table = document.createElement('table');
var tableBody = document.createElement('tbody');
tableData.forEach(function(rowData) {
var row = document.createElement('tr');
rowData.forEach(function(cellData) {
var cell = document.createElement('td');
cell.appendChild(document.createTextNode(cellData));
row.appendChild(cell);
});
tableBody.appendChild(row);
});
table.appendChild(tableBody);
};
var array1 = {key1:"value1",key2:"value2",key3:"value3"};
document.getElementById("myDiv").innerHTML = myFunction(array1);
</script>
编辑:这个问题已经解决了。谢谢评论!
最佳答案
做类似的事情
for(var i in array1) {
console.log(i); //this will print key1, key2...
console.log(array1[i]); //this will print value1, value2...
}
您收到的错误是因为您的数据是 javascript 对象,而不是 javascript 数组。所以 forEach
不起作用。
关于javascript - 发出使用JS函数和数组建表的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43465846/