我在谷歌上搜索过这个问题,但没有找到合适的解决方案。
假设我有如下所示的对象数组--
"points":[{"pt":"Point-1","value":"Java, j2ee developer"},{"pt":"Point-2","value":"Experienced in Core Java, Spring, Hibernate, JPA, Big Data, SOA, BPEL"}]现在,从上面的数组中,我想提取特定对的键值和值,这样我的结果将如下所示--
[{"value":"Java, j2ee developer"},{"value":"Experienced in Core Java, Spring, Hibernate, JPA, Big Data, SOA, BPEL"}]我知道这可以用手动循环来完成。但我不想绕过去。是否有可能在一次访问中就得到结果,还是使用别的api?
发布于 2016-03-28 11:13:55
您可以地图您的数组:
var points = [
{ 'pt': 'Point-1', 'value': 'Java, j2ee developer' },
{ 'pt': 'Point-2', 'value': 'Experienced in ...' }
];
var result = points.map(function(p) {
return { value: p.value };
});发布于 2016-03-28 11:15:17
如果您正在使用最新版本的Javascript,您还可以在调用中使用析构映射,允许您以一种优雅的方式提取您所关心的属性。
points.map(({ value }) => ({ value }));箭头函数以一个point对象作为参数,并使用{ value }将point.value属性分解为一个名为value的变量。
然后,它返回一个速记对象文本,它使用value作为键和值。
在与Babel一起编译时,我们得到:
points.map(function (_ref) {
var value = _ref.value;
return { value: value };
});https://stackoverflow.com/questions/36261153
复制相似问题