Ваш цикл переопределяет первый член массива.
var array = new Array(2);
for (i = 0; i < array.length; i++) {
array[i] = new Array(4);
}
array[0][0] = "name1";
array[0][1] = "property1";
array[0][2] = "value1";
array[0][3] = "0";
//this is where the error happened
array[1][0] = "name2";
array[1][1] = "property2";
array[1][2] = "value2";
array[1][3] = "1";
Если это все, что вы делаете, вы можете использовать для этого краткий синтаксис
var array = [
[
"name1",
"property1",
"value1",
"0"
],
[
"name2",
"property2",
"value2",
"1"
]
];