AngularJS - 设置动态密钥名称

时间:2014-11-03 09:37:52

标签: javascript jquery angularjs

我想设置Object动态的关键名称。这是我的代码: -

if (fieldName == 'DEPARTMENT') {
   var objCombos = []; 
   objCombos = $scope.getValues ('DEPARTMENT');
}
if (fieldName == 'DESIG') {
   var objCombos = []; 
   objCombos = $scope.getValues ('DESIG');
}

$scope.getValues = function (fieldName) {            
        var objDepart= [];
        jq.ajax({
            type: "GET",
            url: "/Data/getValuesWithId?fieldName=" + fieldName,
            async: false,
            success: function (result) {
                angular.forEach(result, function (value, key) {                                               
                   objDepart.push({ id: key, fieldName: value });
                   // This is what i expect { 'id' : 11, 'DEPARTMENT': value }
                   // The key of 2nd element is dynamic(DEPARTMENT, DESIG, etc)
                });
            }
        });
        return objDepart;
    }

如何动态设置密钥?

1 个答案:

答案 0 :(得分:6)

使用Bracket notation

 var obj = { id: key};
 obj[fieldName] = value; //Use Bracket notation
 objDepart.push(obj);