Приветствую, е меня есть массив: 
const users = [
      {
        name: 'Alex',
        id: 1
      },
      {
        name: 'Ivan',
        id: 2
      },
      {
        name: 'Anna',
        id: 3
      }
    ];
И ко мне прилетел объект:
{
        name: 'Vlad',
        id: 4
      }
 
я должен проверить в массиве есть ли объект с таким id и если нет, то добавить, а если есть, то просто удалить объект из массива. Условно если ко мне прилетит опять объект с id '3', то я должен вернуть массив со всеми пользователями кроме Анны. Вот мой код: 
filterFunc(obj) {
    let check;
    if (this.arr.length) {
      check = this.arr.find((elem) => elem.id === obj.id);
    }
    if (check === undefined) {
      this.arr.push(obj);
    } else {
      this.arr = this.arr.filter((elem) => elem.id !== obj.id);
    }
    return arr;
  }
Все работает, но сам код оставляет желать лучшего, можете подсказать более правильную запись?