zoukankan      html  css  js  c++  java
  • Where art thou

    function where(collection, source) {
      var arr = [];
      // What's in a name?
      var keys = Object.keys(source);
      arr = collection.filter(function(item){
        for (var i = 0; i < keys.length; i ++){
          if(!item.hasOwnProperty(keys[i]) || item[keys[i]] !== source[keys[i]]){
            return false;
          }
        }
              return true;
      });
      
      return arr;
    }
    
    where([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });

    另外一种方法

    function where(collection, source) {
      var arr = [];
      // What's in a name?
      var keys = Object.keys(source);
      arr = collection.filter(function(item){
        return keys.every(function(key){
          return item.hasOwnProperty(key) && item[key] === source[key];
        });
      });
      return arr;
    }
    
    where([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });
  • 相关阅读:
    el-upload文件上传组件
    vue 自定义指令input表单的数据验证
    vue-resourse简单使用方法
    go语言基本运算符
    第4课
    第3课
    第2课
    第1课
    第0课
    第0课
  • 原文地址:https://www.cnblogs.com/mengruying/p/6186986.html
Copyright © 2011-2022 走看看