JSLintを使用すると、isEmailValidが機能しません。コードの何が問題になっていますか?ローカルが使用される前に定義されていなかった、@無効な文字、または^が囲まれていないなど、さまざまなエラーメッセージが表示されますが、電子メールの場合は記号「^」が含まれている可能性がありますか?
function isEmailValid(email) {
"use strict";
var e = (email.split("@"), local = /[^\w.!#$%&*+-\/=?^_{|}~]/, domain = /[^\w.-]/);
if (e.length !== 2) {
return false;
}
if (local.test(e[0])) {
return false;
}
if (e[0].length > 253) {
return false;
}
if ((e[0][0] === ".") || (/\.\./.test(e[0]))) {
return false;
}
if (domain.test(e[1])) {
return false;
}
if (e[1].length > 253) {
return false;
}
if (e[1][0] === "." || /\.\./.test(e[1]) || e[1][e[1].length - 1] === ".") {
return false;
}
return true;
}