Javascript 数组大小内索引处的数组未定义
我需要创建一个初始化为对象长度的数组。然后能够将新数据插入数组中的索引中 代码示例:Javascript 数组大小内索引处的数组未定义,javascript,arrays,angularjs,angularjs-scope,Javascript,Arrays,Angularjs,Angularjs Scope,我需要创建一个初始化为对象长度的数组。然后能够将新数据插入数组中的索引中 代码示例: $scope.holder = new Array($scope.x.length); $scope.holder[0].new_data = response.data; 但是,上述情况会产生错误: TypeError: Cannot set 'new_data' of undefined 如果我指定了数组的大小,这怎么可能呢?数组中不应包含三个对象。我怎样才能解决这个问题 $scope.holder =
$scope.holder = new Array($scope.x.length);
$scope.holder[0].new_data = response.data;
但是,上述情况会产生错误:
TypeError: Cannot set 'new_data' of undefined
如果我指定了数组的大小,这怎么可能呢?数组中不应包含三个对象。我怎样才能解决这个问题
$scope.holder = new Array($scope.x.length);
$scope.holder[0] = {'new_data': response.data};
UPD:或者您可以创建对象数组
$scope.holder = Array.apply(null, Array($scope.x.length)).map(function () { return new Object(); })
$scope.holder[0].new_data = response.data;
UPD:或者您可以创建对象数组
$scope.holder = Array.apply(null, Array($scope.x.length)).map(function () { return new Object(); })
$scope.holder[0].new_data = response.data;
在这种情况下,首先
[0]
数组中的元素必须是对象
,因为现在它是未定义的
,并且您不能将属性分配给未定义的
,您需要创建空的对象({}
),然后将属性分配给它
$scope.holder = new Array($scope.x.length);
$scope.holder[0] = {};
$scope.holder[0].new_data = response.data;
在这种情况下,首先[0]
数组中的元素必须是对象
,因为现在它是未定义的
,并且您不能将属性分配给未定义的
,您需要创建空的对象({}
),然后将属性分配给它
$scope.holder = new Array($scope.x.length);
$scope.holder[0] = {};
$scope.holder[0].new_data = response.data;
$scope.holder[0]
尚未定义,数组有三个未定义项$scope.holder[0]
尚未定义,数组也有三个未定义项谢谢!哎,哎,哎,哎,真是太傻了,谢谢你!哎,哎,哎,哎,真是愚蠢的事