title: ignore a object property while filtering is empty
body: <p>I am trying to filter object array based on user selected value from drop down list</p>
  <p>As you see in below example I want to filter the array based on <code>chain</code> and <code>officeid</code>. If one of them is empty then I want to skip that filter.</p>
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>let list = [{
        "index": 4,
        "chain": "aaa",
        "officeId": "bbb"
      },
      {
        "index": 5,
        "chain": "ccc",
        "officeId": "ddd"
        
      }];
  
  function search(chain, office) {
   let data = list.filter(function(result) {
        return result.chain === chain &amp;&amp; result.officeId === office;
   });
   
   console.log(data);
  }
  
  search('aaa','bbb');  // this will work fine
  search('aaa',''); // this returns empty array
  search('', 'bbb'); // empty array</code></pre>
  </div>
  </div>
  </p>
  <p>In above 3 statements I am expecting same output for all</p>
  <p>If both are empty then it should skip the filter and return original array</p>
  <p>i.e <code>search('', '');</code> should not apply any filters</p>