Показать сообщение отдельно
  #12 (permalink)  
Старый 14.12.2017, 15:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Александр3297,
var phoneBook = {};
function re (command) {
// команда add
if (command.split(' ')[0] =='ADD' ){
var name = command.split(' ')[1];
var numb = (command.split(' ')[2]).split(',');
if(!phoneBook.hasOwnProperty(name)) {
      phoneBook[name] = numb;}
else {phoneBook[name] = phoneBook[name].concat(numb);
  }
  return name + " : " +JSON.stringify(phoneBook[name]);
}

// команда  remove
else if (command.split(' ')[0] =='REMOVE_PHONE' ){
var tel = (command.split(' ')[1]),
    arrName = Object.keys(phoneBook);
for (i=0; i< arrName.length; i++){
  var name = arrName[i];
  var numb = phoneBook[name];
  var indx = numb.indexOf(tel)
  if(indx !== -1) {
      numb.splice(indx, 1);
  if(!numb.length) delete phoneBook[name]
      return true
  }
  }
  return false;
  	}

// команда show

if (command.split(' ')[0] =='SHOW'){

 return JSON.stringify(phoneBook);
}

}
alert(re('ADD Ivan 223232'));
 alert(re('ADD Ivan 555-10-01,555-10-03'));
 alert(re('SHOW'))
 alert (re('REMOVE_PHONE 550-10-01'))
alert (re('ADD Alex 544545'))// Вот тут ерунда получается (Ivan, Alex: 544545)
 alert(re('SHOW'))// а тут показывает номера ивана без удаленного

Последний раз редактировалось рони, 14.12.2017 в 16:42.
Ответить с цитированием