如何通过在javascript中输入最小值和最大值来实现用户过滤价格的功能?

时间:2018-02-14 19:45:39

标签: javascript angular typescript angular-forms

我是编程的新手,我想实现一种过滤方法,用户根据价格范围过滤结果,即他们应输入最低价格和最高价格,并获得该价格范围内的商品清单我正在使用javascript和angular 4作为我的前端。

2 个答案:

答案 0 :(得分:1)

因此,您可以使用过滤方法使用此函数过滤掉介于最小值和最大值之间的价格:

function filterItems(items, min, max){
  return items.filter(item => item.price >= min && item.price <= max);
}

答案 1 :(得分:1)

您可以尝试Array.filter()方法,该方法返回符合某些条件的数组值。

假设您有一个名为values的变量中的价格值数组:

var values = [10, 20, 30, 40, 50],
  min = 15, max = 45;

var filteredValues = values.filter(function(value) {
  // Only keep values which are > min and < max
  return value > min && value < max;
}

// filteredValues will be [20, 30, 40]

有更好的方法来编写这个函数,但希望简单的语法希望能够清楚地说明发生了什么:)

或者,请查看this example