[英]Building dynamic json using javascript/angularjs
我正在使用來自使用angularjs的服務器中的數據構建動態json。 我已經聲明如下。 僅當來自服務器的數據在對象數組中具有一項時才有效。 我應該如何聲明它才能動態工作?
$scope.items = [{ id: “”, locations: [{ name: “” }] }]
for (var i=0; i<$scope.data.length; i++) { $scope.items[i].id = $scope.data[i].id; for(var j=0; j<$scope.data[i].locations.length; j++) { $scope.items[i].locations[j].name = $scope.data[i].locations[j].name; } }
僅當有一條記錄來自該服務器時,此方法才有效
在for循環中使用push()方法將數據添加到項目中。
for (var i=0; i<$scope.data.length; i++)
{
//create a json object from your result.
let obj = { id: $scope.data[i].id, locations: .....};
$scope.items.push(obj)
}
你可以像下面這樣
var $scope.items = [];
for (var i=0; i<$scope.data.length; i++)
{
var obj ={};
obj.id = $scope.data[i].id;
obj. locations = $scope.data[i].locations;// can assign locations array here.
$scope.items.push(obj);
}
實際問題是
$ scope.data已經是帶有數據的數組,因此您可以訪問它的索引i
其中,由於$ scope.items是數組,但仍未索引,因此解決方案是1.使用Push添加數據2.首先使用json創建索引,然后添加數據
$scope.items = [];
for (var i=0; i<$scope.data.length; i++)
{
$scope.items[i]={id : $scope.data[i].id , locations:[]};
for(var j=0; j<$scope.data[i].locations.length; j++) {
$scope.items[i].push($scope.data[i].locations[j].name);
}
}
console.log($scope.items);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.