我不明白如何在Javascript中找到子数组的长度。以下是练习中的示例:
var table = [
["Person", "Age", "City"],
["Sue", 22, "San Francisco"],
["Joe", 45, "Halifax"]
];
我尝试使用这些for循环分别打印出子数组的元素:
for(person in table) {
for(var i = 0; i < table[person].length; i++);
console.log(table[person][i]);
}
但似乎
table[person].length
虽然
,但语法无效table.length
有效且
table[person][i]
返回子索引table_person_i
的元素答案 0 :(得分:1)
您应该使用嵌套的for
循环执行此任务:
for (var i = 0; i < table.length; i++) {
for (var j = 0; j < table[i].length; j++) {
console.log(table[i][j]);
}
}
答案 1 :(得分:1)
试试这个:
for (var j = 0; j<table.length; j++)
{
//j(th) element of table array
for (var i = 0; i < table[j].length; i++)
{
//i(th) element of j(th) element array
console.log(table[j][i]);
}
}
答案 2 :(得分:1)
这是一个数组,而不是一个对象,所以你不能使用 for / in 循环。请改为使用常规的 for 循环。
//for (person in table) {
for (var person = 1; person < table.length; person++) {
for(var i = 0; i < table[person].length; i++)
{
console.log(table[person][i]);
}
}
答案 3 :(得分:0)
在您的示例中,您的数组是一个数组数组。 要获取人名,并根据您的示例:
for (var i = 1; i < table.length; i++)
{
console.log(table[i][0]); // first element of each sub array
}