Javascript 使用angular.forEach()中的键和值动态创建角度对象

Javascript 使用angular.forEach()中的键和值动态创建角度对象,javascript,angularjs,Javascript,Angularjs,创建零件对象时无法填充键的原因。或者我该怎么做。您需要做的是部分[k]=value 实际上,当您分配parts={k:value},这是这样的: if ($scope.data) { $formData = []; angular.forEach($scope.data, function(value, key){ console.log(key); // o/p: 'fruitname' var k

创建零件对象时无法填充键的原因。或者我该怎么做。

您需要做的是
部分[k]=value
实际上,当您分配parts={k:value},这是这样的:

    if ($scope.data) {
        $formData = [];
        angular.forEach($scope.data, function(value, key){

            console.log(key);  //  o/p: 'fruitname'
            var k = key;
            var value = value || 'Not Available';
            console.log(value); // o/p: 'apple'

            var parts = {k : value};
            console.log(parts);  // o/p: Object {k: "apple"}
            $formData.push(parts);
        });
    }

因此,您可以看到,它不采用k的值,而是采用k作为字符串,并将一个值分配给该字符串作为键字段。

当我尝试这样做时,它会起作用

parts["k"] = value;

是 啊我得到了它。。我将代码更改为parts[key]=value;现在它正在工作。非常感谢。
if ($scope.data) {
    $formData = [];
    angular.forEach($scope.data, function(value, key){

        console.log(key);  //  o/p: 'fruitname'
        var value = value || 'Not Available';
        console.log(value); // o/p: 'apple'

        var parts = {};
        parts[key] = value;
        console.log(parts);  // o/p: Object {"fruitname": "apple"}
        $formData.push(parts);
    });
}