title: Array of Objects Compare and Exclude
body: <p>I am using this handy function:</p>
  <pre><code>function not(a, b) {
    return a.filter((value) =&gt; b.indexOf(value) === -1);
  }
  </code></pre>
  <p>Then I have this</p>
  <pre><code>let AvailableList = not(FullList, MyList);
  </code></pre>
  <p>If I were to give example of first element in MyList and FullList it is:</p>
  <pre><code>appName: &quot;MyAppName*&quot;
  description: null
  permissionID: MyAppID*
  permissionName: &quot;MyAppPermName*&quot;
  __proto__: Object
  </code></pre>
  <p>So initially AvailableList is full of items like above. When user makes selection and saves it I save it into MyList. So then I need to use this not function to calculate remaining parts from MyList. But even when I move the first item of AvailableList to MyList then check like <code>if(AvailableList === MyList) console.log(true) else console.log(false)</code> I get false. But if I console log both of the array's first items they print identical values. I tried to compare after declaring variables using <code>Object.assign()</code> as well but no help.</p>
  <p>Perhaps I can tackle this easily checking a value like permissionID, but I do not want to go that route since there will be other items later on that won't have permissionID.</p>
  <p>If you know of a different function that can do a better job, feel free to share. Please don't share library solutions like Lodash.</p>
  <ul>
  <li>*entries are masked</li>
  </ul>