title: AngularJS 'ng-filter' is very slow on array of ~1000 elements
body: <p>I have a simple <code>&lt;input&gt;</code> search filter set up for a list of itemnames in <code>AngularJS</code>.</p>
  
  <p>My list looks like this:</p>
  
  <pre><code>var uniqueLists = {
      category1: ['item1', 'item2', 'item3' ... 'item180' ], // Real list contains ~180 items
      category2: ['itemA', 'itemB', 'itemC' ... 'itemZZZ' ], // Real list contains ~1080 items
      category3: ['otheritem1', 'otheritem2', 'otheritem3' ]  // Real list contains 6 items
    }
  </code></pre>
  
  <p>I iterate through this list in Angular and print out the results in a <code>&lt;ul&gt;</code> for each category.</p>
  
  <pre><code>&lt;div ng-repeat="(key,val) in uniqueLists"&gt;
      &lt;form ng-model="uniqueLists[index][0]"&gt;
          &lt;input ng-model="searchFilter" type="text" /&gt;
              &lt;ul&gt;
                  &lt;li ng-repeat="value in val | filter: searchFilter"&gt;
                      &lt;label&gt;
                           &lt;input type="checkbox" ng-model="selectedData[key][value]" /&gt;
                          {{value}}
                      &lt;/label&gt;
                  &lt;/li&gt;
              &lt;/ul&gt;
      &lt;/form&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>For clarity, selectedData looks like this:</p>
  
  <pre><code>var selectedData = {category1: [item1:true], category2: [], category3: []); // if 'item1's checkbox is checked.
  </code></pre>
  
  <p>This list is working just fine, although the <code>filter</code> is quite laggy, even on my quite-fast computer. Typing a letter into the input takes 1-2 seconds for the list to update.</p>
  
  <p>I'm aware that this is likely because I'm filtering through around about 1000 items at a time, but I haven't seen any discussion of this elsewhere.</p>
  
  <p>Is there any way to get better performance out of the filter? </p>