我有一个对象(obj
),其中包含excel表的内容(使用node-xlsx库)。
console.log(obj)
为我提供了以下数据结构:
[ { name: 'Autostar Report',
data:
[ [Object],
[],
[Object],
[Object],
[Object],
[Object],
[Object],
[Object],
[Object],
[Object],
[Object],
[],
[object]
]}]
data
中的每个对象都包含以下值:
[
8,
"Enugu - Abuja",
"Sienna Executive ( 1st )",
5,
"9,000",
"45,000",
"5,500",
"39,500"
],
[
14,
"Enugu - Lagos",
"Sienna Executive ( 1st )",
5,
"9,000",
"45,000",
"8,600",
"36,400"
]
data
中包含的每个对象包含8个值。我想将值插入数据库表。每个值都转到表中的一个字段。
请问如何访问每个data
对象中的值?
答案 0 :(得分:2)
请注意,当obj.data
值确实是数组的数组时,您会继续说“对象”。对于数组,可以通过数字索引访问值。
因此,鉴于您的数据结构以及您只选择了javascript,您可以像这样访问数据:
// ensure the object has a "data" attribute
if (obj.hasOwnProperty('data')) {
// get the data into a variable for convenience
var data = obj.data;
// loop over each row
for (i = 0; i < data.length; i++) {
// put the row into a variable for convenience
var row = data[i];
// since it's an array, access each value by index
console.log(row[0]);
console.log(row[1]);
console.log(row[2]);
// ... etc ...
}
}
在处理此类内容时,underscore或lodash这样的库肯定会派上用场。