Показать сообщение отдельно
  #1 (permalink)  
Старый 12.12.2017, 16:30
Интересующийся
Отправить личное сообщение для Александр3297 Посмотреть профиль Найти все сообщения от Александр3297
 
Регистрация: 03.12.2017
Сообщений: 14

Отобразить контакты в телефонной книге
Добрый день! Помогите разобраться, что делаю не так.

Нужно создать функцию, которая добавляет, удаляет и показывает номера в зависимости от команды.
Эти действия должны выполнятся корректно:
1.'ADD Ivan 555-10-01,555-10-03'
2.'ADD Ivan 555-10-02'
3.'REMOVE_PHONE 555-10-03'
4'ADD Alex 555-20-01'
5. 'REMOVE_PHONE 555-20-01'
6. и после команды SHOW: 'В телефонной книге: "Ivan: 555-10-01, 555-10-02"'

var phoneBook = {};
 var command = 'ADD Ivan 555-10-01,555-10-03';
function (command){

function add() {
var name = command.split(' ')[1];
var numb = (command.split(' ')[2]).split(',');
if (!phoneBook.hasOwnProperty(name)) {
 	   	phoneBook[name] = {};
		  phoneBook[name].numbr = numb;
}
else{phoneBook[name].numbr = phoneBook[name].numbr.concat(numb); }}


function remove() {
var numb = (command.split(' ')[1]);
for (i=0; i<((phoneBook[name].numbr).length); i++){ if (phoneBook[name].numbr[i].includes(numb)) {
        x = phoneBook[name].numbr[i].indexOf(numb);
        phoneBook[name].numbr[i].splice(x, 1);
}}}


function show() { for (i=0; i<(Object.keys(phoneBook)).length; i++) { 
var contactBook = ('В телефонной книге: ' + Object.keys(phoneBook)[i] + ': ' + (phoneBook[(Object.keys(phoneBook)[i])].numbr).join(', ') + '\n');
return contactBook;}}

if(command.split(' ')[0]=='ADD') {add();}
else if(command.split(' ')[0]=='REMOVE_PHONE') {remove();}
else if (command.split(' ')[0]=='SHOW') {show();}}
Ответить с цитированием