2011-04-30 76 views

回答

7

我要去猜测,你有没有初始化当你试图把它当作一个数组来对待时,它就是a[i]。如果当你说a[i][j]时你还没有初始化a[i]是一个数组,那么它将是未定义的(或其他不是数组或对象的其他东西),并且不知道[j]的含义,因此你的“不能转换为一个对象“的错误。你需要更多的东西是这样的:

var a = [ ]; 
for(var i = 0; i < 10; ++i) { 
    a[i] = [ ]; 
    for(var j = 0; j < 10; ++j) { 
     a[i][j] = 42; // a[i] is now an array so this works. 
    } 
} 
3

设置像

a[3]["fieldName"]="xxxx"; 
+0

这是不对的。访问数组是通过索引位置完成的。同样适用于多维数组。一个[indexNumber] [indexNumber]。 – 2017-06-06 11:36:14

+0

你能解释answer.That帮助了别人,如果答案是正确的 – lalithkumar 2017-06-06 11:50:20

+0

你推数组作为Arr.push({ TimeSheetID:0, 专案编号:1, 项目名:“测试”, TASKNAME:“我的任务“, TaskType:TaskType, Status:0, IsNew:true });因此你的数组对象包含10条记录,如果你想在第三个索引处更改ProjectName属性的值,那么你应该写成:Arr [3] [“ProjectName”] =“xxxxxxx”; – 2017-06-12 07:22:05