Не удаляется атрибут у свойства объекта

Александр Карамушко
var phoneBook = {};  

function fun (command) {
   var cmd = command.split(' ')[0];  // создал массив и по номеру элемента вытащил команду
   var name = command.split(' ')[1];  // создал массив и вытащил имя
   var numbers = command.split(' ')[2];  // создал массив и вытащил номера
   var removePhone = command.split(' ')[1];  //создал массив и вытащил элемент с номером, который нужно удалить

   if (cmd == 'ADD') {  // если в функцию передается строка с ADD - phoneBook получает ключ name: numbers
      return phoneBook[name] = numbers; 
   }
   else if (cmd == 'REMOVE_PHONE') {  // если в функцию передается команда с 'REMOVE_PHONE - удаляется номер который указан в этой команде
      for (var key in phoneBook) {  // запустил цикл, чтобы по условию найти ключ в котором есть искомый телефон, который надо удалить
        if (phoneBook[key].indexOf(removePhone) !== -1) { 
           return phoneBook[key] = phoneBook[key].splice(phoneBook[key].indexOf(removePhone), 1); // должен вернуть атрибут с удаленным номером, но не возвращает
        }
      }
   }
}

fun('ADD Ivan 555-10-01,555-10-03');

alert(Object.keys(phoneBook))

fun('REMOVE_PHONE 555-10-03');

alert(phoneBook.Ivan)

Суть проблемы в том, что команда fun('REMOVE_PHONE 555-10-03') не удаляет номер, а alert(phoneBook.Ivan) после нее вообще ничего не показывает

1 чел.