Javascript 如何使用运算符按字符串编号筛选数组?
我实现了一种根据指定选项过滤商品的方法。该方法将包含搜索参数的options对象作为参数,例如:{name:“item 2”,price:“2”},每个选项都是可选的。该方法必须返回商品的过滤数组。filterProductBy(选项) 我设法按名称筛选。告诉我如何按号码正确筛选,以便筛选调用如下所示:Javascript 如何使用运算符按字符串编号筛选数组?,javascript,Javascript,我实现了一种根据指定选项过滤商品的方法。该方法将包含搜索参数的options对象作为参数,例如:{name:“item 2”,price:“2”},每个选项都是可选的。该方法必须返回商品的过滤数组。filterProductBy(选项) 我设法按名称筛选。告诉我如何按号码正确筛选,以便筛选调用如下所示: console.log(shop.filterProductBy({ name: "product 1", count: ">1", price: "<=1000"})); 你的问
console.log(shop.filterProductBy({
name: "product 1",
count: ">1",
price: "<=1000"}));
你的问题涉及多个子问题。
我认为最重要的是如何将字符串解析为比较运算符? 这是一个主要的实现,您可以进一步:
函数解析复合运算符(oString,lhs){
if(oString.match(“(?:)=?\\d+”)==null){
返回“无效输入”;
}
让rator=oString.match(“(?:)=?”[0];
设rhs=oString.match(\\d+)[0]*1;
如果(r=='>'){
返回(左侧>右侧);
}
else if(rator=='='='){
返回(左侧>=右侧);
}
否则如果(r=='