Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict';
- /**
- * Сделано задание на звездочку
- * Реализован метод importFromCsv
- */
- const isStar = true;
- /**
- * Телефонная книга
- */
- let phoneBook = new Map();
- /**
- * Добавление записи в телефонную книгу
- * @param {String} phone
- * @param {String?} name
- * @param {String?} email
- * @returns {Boolean}
- */
- function checkPhoneFormat(phone) {
- return /^\d{10}$/.test(phone);
- }
- function checkNameFormat(name) {
- return (!(name === undefined || name === ''));
- }
- function add(phone, name, email) {
- if (!checkPhoneFormat(phone) || phoneBook.has(phone) || !checkNameFormat(name)) {
- return false;
- }
- email = (email === undefined) ? '' : email;
- phoneBook.set(phone, {
- name, email
- });
- return true;
- }
- /**
- * Обновление записи в телефонной книге
- * @param {String} phone
- * @param {String?} name
- * @param {String?} email
- * @returns {Boolean}
- */
- function update(phone, name, email) {
- }
- /**
- * Удаление записей по запросу из телефонной книги
- * @param {String} query
- * @returns {Number}
- */
- function findAndRemove(query) {
- }
- /**
- * Поиск записей по запросу в телефонной книге
- * @param {String} query
- * @returns {String[]}
- */
- function find(query) {
- }
- /**
- * Импорт записей из csv-формата
- * @star
- * @param {String} csv
- * @returns {Number} – количество добавленных и обновленных записей
- */
- function importFromCsv(csv) {
- // Парсим csv
- // Добавляем в телефонную книгу
- // Либо обновляем, если запись с таким телефоном уже существует
- return csv.split('\n').length;
- }
- module.exports = {
- add,
- update,
- findAndRemove,
- find,
- importFromCsv,
- isStar
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement