2016-11-25 12 views
-1

類似のオブジェクトを配列に挿入しようとしていますが、各オブジェクトでいくつかの値をプッシュしていますが、更新された値はすべてのオブジェクトに反映されています。私は最初のオブジェクトにfoo配列から3つの値だけを追加したいが、2つ目のオブジェクトのfooでは3つの値を追加したいが、両方のオブジェクトで6つの値がすべて表示される。類似のオブジェクトを動的に追加

<!DOCTYPE html> 
<html ng-app="myApp" ng-controller='myCtrl'> 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
<script> 
myapp=angular.module('myApp',[]).controller('myCtrl',function($scope){ 
    $scope.inp=[]; 
    var a={foo:[]}; 
    var barcode='one_two_three_four_five_six'; 
    var arr=barcode.split('_'),k=-1; 
    for(i=0; i < arr.length; i++){ 
     if(i%3 == 0){ 
      $scope.inp.push(a); 
      k++;} 
    $scope.inp[k].foo.push(arr[i]); 
    } 
}); 
</script> 
<body> 
<div ng-repeat='x in inp track by $index'>{{(x)}}</div> 
</body> 
</html> 

答えて

0

3つの値を保持し、アレイ

var temp=[]; 
for(i=0;i<arr.length;i++){ 
    temp[i%3]=arr[i]; 
    if((i+1)%3==0){ 
     foo.push(temp); 
     temp=[]; 
     k++; 
    } 
} 
をfooへのその値をプッシュする一時的な配列変数を持っています
関連する問題