Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 从ArrayObject创建新的单个对象_Angularjs_Json_Object_Underscore.js_Lodash - Fatal编程技术网

Angularjs 从ArrayObject创建新的单个对象

Angularjs 从ArrayObject创建新的单个对象,angularjs,json,object,underscore.js,lodash,Angularjs,Json,Object,Underscore.js,Lodash,我想要一个对象,我可以简单地将其更改为JSON格式,以便以后导出。 为此,我有一个数组的对象,如下所示: [ { "name": "Test", "value": "EN Test" }, { "name": "Test2", "value": "DE test2" } ] 它必须像这样精确 { "Test" : "EN Test", "Test2" : "DE test2", } 因此,一个包含数组中所有对象的值的单个对象,但仅包含“na

我想要一个
对象
,我可以简单地将其更改为JSON格式,以便以后导出。 为此,我有一个
数组
对象
,如下所示:

[
  {
    "name": "Test",
    "value": "EN Test"
  },
  {
    "name": "Test2",
    "value": "DE test2"
  }
]
它必须像这样精确

{
 "Test" : "EN Test",
 "Test2" : "DE test2",
}
因此,一个包含数组中所有对象的值的单个对象,但仅包含“
name
”和“
Value
”的值。 Angular merge/copy/extend等处理2个数组,只合并它们,而不使用诸如“仅获取名称和值的值”之类的选项。
使用
Lodash

object = _.map(objectArray,'name');
Giving me
[ "Test", "Test2", ]
But with multiple
object = _.map(objectArray,['name','value']);
[ false, false, ]
doing
object = _.map(objectarray,_.partial(_.ary(_.pick,2),_,['name','value']));
output is
[ { "name": "Test", "value": "EN Test" }, { "name": "Test2", "value": "DE test2" } ]
not
{ "Test" : "EN Test", "Test2" : "DE test2", }
等等

object = _.mapValues(objectArray,'name');
{
  "0": "Test",
  "1": "Values",
}
this.lang = _.mapValues(this.exportData,_.partial(_.ary(_.pick,2),_,['name','value']));

  "0": {
    "name": "Test",
    "value": "Test"
  },
  "1": {
    "name": "TEst2",
    "value": "Test2"
  },..
我能做什么来实现这一目标

{
 "Test" : "EN Test",
 "Test2" : "DE test2",
}

使用本机JavaScript方法

var数据=[{
“名称”:“测试”,
“值”:“EN测试”
}, {
“名称”:“Test2”,
“值”:“DE test2”
}];
//迭代数组
var res=数据减少(功能(obj,v){
//定义对象属性
obj[v.name]=v.value;
//返回对象
返回obj;
//将初始值定义为空对象
//用于存储结果
}, {})
控制台日志(res)试试这个

var a=[
{
“名称”:“测试”,
“值”:“EN测试”
},
{
“名称”:“Test2”,
“值”:“DE test2”
}
];
var obj={};
a、 forEach(函数(节点){
obj[node.name]=node.value
});
控制台日志(obj)