我试图从一个JSON读值转换成一个二维数组JavaScript的类型错误在2D阵列
var arr = [[],[]];
var i = 0;
var file = './test.json';
jsonfile.readFile(file, function(err, objs) {
let i = 0;
objs.forEach(function (obj) {
arr[i][0] = obj["outcount"];
arr[i][1] = obj["gateID"];
arr[i][2] = obj["timestamp"];
arr[i][3] = obj["eventCode"];
i = i + 1;
});
console.log(arr[2]);
})
对于i = 0且i = 1时,工作正常,但在设为i = 2它提供错误
TypeError: Cannot set property '0' of undefined
'arr'只包含2个元素,那你得到'常用3 [0]'和'改编[1]'但是当你试图获得第3,不存在的元素与'ARR [2] '你得到'undefined',然后尝试访问'undefined'的属性,它给你那个TypeError –
@MikaelLennholm如何创建一个没有元素限制的二维数组? – Arpit
看到穆萨的回答。数组没有设置数量的元素也没有最大数量的元素,您可以自由地从数组中添加和删除 –