2016-05-11 53 views
1

通過對象的鍵獲取值的AngularJS方法是什麼?AngularJS通過對象的另一個值獲取值

var myobj= { 
     "set1": { 
      "key": "B11", 
      "color": "yellow" 
     }, 
     "setA": { 
      "key": "F34", 
      "color": "green" 
     } 
    } 

讓我們說我想用"F34"抓住從myobj"green"? (myobj可以是任意數量的對象)。

它可以通過一個AngularJS的方式來完成,或者有如果您在使用多個控制器這種情況下打算看看到SO question

+2

這是一個一般的JS問題,而不是具體到角。 –

回答

2

/服務我想創建一個自定義過濾器做的工作爲了我。

angular.module('myApp').filter('getColour', getColour); 

function getColour() { 
    return filter; 

    function filter(object, key) { 
     var colour; 
     angular.forEach(object, function(set) { 
      if (set.key === key) 
       colour = set.color; 
     }); 

     return colour; 
    } 
} 

然後可以使用這樣的:

$scope.colour = $filter('getColour')(myobj, 'F34'); 

Example fiddle

相關問題