Javascript 过滤对象数组
我有如下数据:Javascript 过滤对象数组,javascript,node.js,Javascript,Node.js,我有如下数据: [{address: '1300 BRYANT ST', block: '3903', cnn: '517000', latitude: '37.7690871267671', longitude: '-122.411527667132', received: '2016-05-06', x: '6009188.668', y: '2108146.472' }, {B...}, {C...}] [{address: '1300 BRYANT ST',
[{address: '1300 BRYANT ST',
block: '3903',
cnn: '517000',
latitude: '37.7690871267671',
longitude: '-122.411527667132',
received: '2016-05-06',
x: '6009188.668',
y: '2108146.472' }, {B...}, {C...}]
[{address: '1300 BRYANT ST',
latitude: '37.7690871267671',
longitude: '-122.411527667132'},
...]
我想过滤数据,使其看起来像这样:
[{address: '1300 BRYANT ST',
block: '3903',
cnn: '517000',
latitude: '37.7690871267671',
longitude: '-122.411527667132',
received: '2016-05-06',
x: '6009188.668',
y: '2108146.472' }, {B...}, {C...}]
[{address: '1300 BRYANT ST',
latitude: '37.7690871267671',
longitude: '-122.411527667132'},
...]
如何使用JavaScript过滤这些数据?一个简单的方法是:
var arr=[{地址:'1300布莱恩特街',街区:'3903',cnn:'517000',纬度:'37.7690871267671',经度:'-122.411527667132',收到:'2016-05-06',x:'6009188.668',y:'2108146.472'},{地址:'12 Other ST',block:'3903',cnn:'517000',纬度:'12.7690871299999',经度:'44.412300067132',收到:'2016-05-06',x:'6009188.668',y:'2108146.472'}];
arr=arr.map(函数(v){
返回{
地址:v.地址,
纬度,
经度
};
});
console.log(arr);
执行此操作的简单方法是:
var arr=[{地址:'1300布莱恩特街',街区:'3903',cnn:'517000',纬度:'37.7690871267671',经度:'-122.411527667132',收到:'2016-05-06',x:'6009188.668',y:'2108146.472'},{地址:'12 Other ST',block:'3903',cnn:'517000',纬度:'12.7690871299999',经度:'44.412300067132',收到:'2016-05-06',x:'6009188.668',y:'2108146.472'}];
arr=arr.map(函数(v){
返回{
地址:v.地址,
纬度,
经度
};
});
console.log(arr);
假设您已将JSON解析为名为jsonData
的JavaScript对象,您只需迭代数组并添加如下内容:
var jsonData = ...;
var filteredData = [];
for (var i = 0; i < jsonData.length; i++) {
filteredData.push({
address: jsonData[i].address,
latitude: jsonData[i].latitude,
longitude: jsonData[i].longitude,
});
}
var jsonData=。。。;
变量filteredData=[];
对于(var i=0;i
假设您已将JSON解析为名为jsonData
的JavaScript对象,您只需迭代数组并添加如下内容:
var jsonData = ...;
var filteredData = [];
for (var i = 0; i < jsonData.length; i++) {
filteredData.push({
address: jsonData[i].address,
latitude: jsonData[i].latitude,
longitude: jsonData[i].longitude,
});
}
var jsonData=。。。;
变量filteredData=[];
对于(var i=0;i
使用普通JavaScript:
var arr=
[{address: '1300 BRYANT ST',
block: '3903',
cnn: '517000',
latitude: '37.7690871267671',
longitude: '-122.411527667132',
received: '2016-05-06',
x: '6009188.668',
y: '2108146.472' }];
var k=arr.map(function(v) {
return {
address: v.address,
latitude: v.latitude,
longitude: v.longitude
}
});
下面是一个使用纯JavaScript的.:
var arr=
[{address: '1300 BRYANT ST',
block: '3903',
cnn: '517000',
latitude: '37.7690871267671',
longitude: '-122.411527667132',
received: '2016-05-06',
x: '6009188.668',
y: '2108146.472' }];
var k=arr.map(function(v) {
return {
address: v.address,
latitude: v.latitude,
longitude: v.longitude
}
});
这是一个。您正在重新说明
arr
。最好只分配arr=arr.map(…)
@sumneevans-很好。我开始将结果分配给一个新变量,然后将其更改为覆盖旧变量。已更新。@nnnnnn:事实上,我更新了数组,键也是字符串。这将如何更改此javascript代码?谢谢!!!它根本不会更改它。如果使用{someKey:1}
(无引号)实际键将是字符串“someKey”
。您正在重新声明arr
。最好只分配arr=arr.map(…)
@sumneevans-很好。我开始将结果分配给一个新变量,然后将其更改为覆盖旧变量。已更新。@nnnnnn:事实上,我更新了数组,键也是字符串。这将如何更改此javascript代码?谢谢!!!它根本不会更改它。如果使用{someKey:1}
(无引号)实际键将是字符串“someKey”
。