рони,
Спасибо большое за подсказки!
Практически все работает, вот что получилось
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 Object.keys(phoneBook) + ': ' + phoneBook[name];
}
// команда remove
else if (command.split(' ')[0] =='REMOVE_PHONE' ){
var numb = (command.split(' ')[1]);
for (i=0; i<Object.keys(phoneBook).length; i++){
var key = Object.keys(phoneBook)[i];
for (j=0;j<phoneBook[key].length; j++){
if (phoneBook[key][j] = numb){
var x = phoneBook[key][j].indexOf(numb);
phoneBook[key].splice(x, 1);
return true;}
else return false;
} }}
// команда show
if (command.split(' ')[0] =='SHOW'){
var book = [];
for (i=0; i<(Object.keys(phoneBook)).length; i++){
var key = Object.keys(phoneBook)[i];
book[i] = [key + ': ' + phoneBook[key] + '\n'];
return book;
}}}
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'))// а тут показывает номера ивана без удаленного
Как думаете, в чем причина может быть?в функции Add?