我要筛选具有许多照片这样的信息的阵列,但过滤器应该是可变的(自变量和自变量的数据类型):可变过滤器标准
var photos = [
{
lat: -15,
lng: -20,
alt: 381,
date: "2016-12-12",
comment: "Text1" // and many more arguments like file size, bitdepth, iso, ...
},
{
lat: -17,
lng: -22,
alt: 1381,
date: "2016-11-11",
comment: "Text2" // and many more arguments like file size, bitdepth, iso, ...
},
{
lat: -25,
lng: -30,
alt: 1000,
date: "2016-10-10",
comment: "Text3" // and many more arguments like file size, bitdepth, iso, ...
},
];
现在我D类似于使用该方法
array.filter(callbackfn[, thisArg])
但过滤标准和数据类型的数据寻找变化的阵列来筛选(例如搜索与元件“(LAT < -15)”或“(LNG> -25 )& &(alt> 1000)'或'comment ==“T ext2“,但我不知道如何做到这一点。显然,这
function filterMetaData(obj, filterString) {
if(filterString) {
return true;
} else {
return false;
}
}
var result = photos.filter(filterMetaData, "lat < -18");
不起作用,因为“LAT < -18”是一个字符串,而不是解释像一个标准,所以如果(filterString)总是真。
这怎么办? Thx,Markus!
THX,这就是我一直在寻找 – Markus
设法使功能人性化:如何修改,只需要过滤条件即G。 '(lat <-15)|| (lng> -25 &&(alt> 1000)'而不是'(o.lat <-15)||(o.lng> -25 &&(o.alt> 1000)'@ – Markus
@Markus,也许是第二种方法为你工作与ES6。 –