我试图创建一个显示电子邮件前3个字母的函数,然后在@
之前隐藏其余字母。
我的电子邮件可能是:TonyNielson@Stackoverflow.com
我希望它看起来像:Ton********@stackoverflow.com
这是我迄今为止最好的尝试,但我似乎无法找出如何做其余的事。
function hideemail(target) {
var email = $(target).html();
var hiddenEmail = "";
for (i = 0; i < email.length; i++) {
if (i > 2) {
hiddenEmail += "*";
} else {
hiddenEmail += email[i];
}
}
console.log(hiddenEmail)
}
hideemail(".email")
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="email">TonyNielson@stackoverflow.com</div>
&#13;
答案 0 :(得分:4)
您还需要检查@
符号。
因此条件变为if (i > 2 && i< email.indexOf("@") ) {
function hideemail(target) {
var email = $(target).html();
var hiddenEmail = "";
for (i = 0; i < email.length; i++) {
if (i > 2 && i< email.indexOf("@") ) {
hiddenEmail += "*";
} else {
hiddenEmail += email[i];
}
}
console.log(hiddenEmail)
}
hideemail(".email")
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="email">TonyNielson@stackoverflow.com</div>