2017-06-21 9 views
2

で2次元配列にオブジェクトからキーとその値をプッシュこれは私が配列に変換する必要が対象です:AngularJS

[["09:00AM - 09:30AM","booked"], 
["09:30AM - 10:00AM","notbooked"], 
["10:00AM - 10:30AM","booked"], 
["10:30AM - 11:00AM","notbooked"]] 

私が知っている:

{ 
    "09:00AM - 09:30AM": "booked", 
    "09:30AM - 10:00AM": "notbooked", 
    "10:00AM - 10:30AM": "booked", 
    "10:30AM - 11:00AM": "notbooked", 
} 

ここで所望の出力ですこれをキーまたは値の1D配列に使用できます。

angular.forEach($scope.slotss , function(value, key) { 
    this.push(key); 
},$scope.times); 
+1

'Object.keys(OBJ).MAP(キー=>キー、OBJ [キー]])' ' – Tushar

+0

Object.entries(OBJにこの配列をプッシュ) '... done:p –

答えて

2

キーと値をでラップするだけです

angular.forEach($scope.slotss , function(value, key) { 
      this.push([key,value]); 
     },$scope.times); 
+0

これはうまくいくはずです –

1

私はこのようなものとなるだろう:私たちは、このように行うことができる唯一のJavaScriptを使用して

var newSlots = []; 

angular.forEach($scope.slotss, 
       function(value, key) { 
        newSlots.push([key, value]); 
       }); 
+0

答えがありがとう、Sureshさんの答えは私のために働きました。 –

1

for..inを使用してオブジェクトをループします。次に、キーと値をオブジェクトから押し出すための一時的な配列を作成します。次いで、最終的なアレイ

var curObject = { 
 
    "09:00AM - 09:30AM": "booked", 
 
    "09:30AM - 10:00AM": "notbooked", 
 
    "10:00AM - 10:30AM": "booked", 
 
    "10:30AM - 11:00AM": "notbooked", 
 
}; 
 
var newArray = []; 
 

 
for (var keys in curObject) { 
 
    var tempArray = []; 
 
    tempArray.push(keys, curObject[keys]); 
 
    newArray.push(tempArray) 
 
} 
 
console.log(newArray)

+0

答えてくれてありがとう、私のために働くSureshの答えを使った –