Чтобы упомянуть, что я новичок в Javascript, хотя у меня есть некоторый предыдущий опыт работы с Java.
Напишите функцию для скрытия адреса электронной почты. Отобразите первую и последнюю букву и замените точкой остальные буквы.
function protect(mail) {
...........
}
console.info(protect("[email protected]"));
console.info(protect("[email protected]"));
console.info(protect("[email protected]"));
Выход:
Я думал, что это сработает, но это не так:
function protect(mail){
let b = mail.indexOf("@");
for(let i=1; i<b-1; i++){
mail.replace(".",mail.charAt(i));
}
return mail;
}



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Используйте split и repeat с литералами шаблона:
function protect(mail) {
var [name, domain] = mail.split("@");
var blockedName = `${name[0]}${".".repeat(name.length - 2)}${name[name.length - 1]}`;
return `${blockedName}@${domain}`;
}
console.info(protect("[email protected]"));
console.info(protect("[email protected]"));
console.info(protect("[email protected]"));
Опубликованный вопрос, похоже, вообще не включает любая попытка для решения проблемы. StackOverflow ожидает от вас попробуй сначала решить свою проблему, поскольку ваши попытки помогают нам лучше понять, чего вы хотите. Пожалуйста, отредактируйте вопрос, чтобы показать, что вы пробовали, чтобы проиллюстрировать конкретное препятствие, с которым вы столкнулись в минимальный воспроизводимый пример. Для получения дополнительной информации см. Как спросить и возьмите тур.