Jquery filter array of object with loop

前端 未结 3 1828
我在风中等你
我在风中等你 2020-12-20 18:34

I have an array of objects like this:

myArray = [
{label: \"a\", 
value: \"100\"},
{label: \"b\",
value: \"101\"},
{label: \"c\",
value: \"102\"}
...
         


        
相关标签:
3条回答
  • 2020-12-20 19:11

    Just check if the value you're filtering on is in your array

    myArrayFiltered = myArray.filter(function(v){ 
        return ["102", "103"].indexOf(v.value) > -1;
    });
    
    0 讨论(0)
  • 2020-12-20 19:18
    var arrValues = ["101", "102"];
    
    
    
     var result = getData(arrValues,"102")
    
    
    
     function getData(src, filter) {
            var result = jQuery.grep(src, function (a) { return a == filter; });
            return result;
        }
    
    0 讨论(0)
  • 2020-12-20 19:25

    You could use the .some method inside your filter:

    var requiredValues = ["101", "102", "103"];
    myArrayFiltered = myArray.filter(function(v){ 
        return requiredValues.some(function(value) {
            return value === v.value;
        });
    });
    
    0 讨论(0)
提交回复
热议问题