私はいくつかの検索を行い、他の人がこの質問とそれに対する回答を求めている場所を探しましたが、私がやろうとしていたことに合うものはありませんでした. 基本的に、(123)4567890 をエントリとして受け入れる電話エントリの検証に取り組んでいます。1234567890 などの単純な数値文字列を受け入れるものと、ダッシュ 123-456-7890 を使用するものを既に実装しています。どこかで単純な間違いを犯していることは知っていますが、何が間違っているのかわかりません。
機能しているダッシュ形式の電話番号は次のとおりです。
//Validates phone number with dashes.
function isTwelveAndDashes(phone) {
if (phone.length != 12) return false;
var pass = true;
for (var i = 0; i < phone.length; i++) {
var c = phone.charAt(i);
if (i == 3 || i == 7) {
if (c != '-') {
pass = false;
}
}
else {
if (!isDigit(c)) {
pass = false;
}
}
}
return pass;
}
これは私が解決できないものです。
function isTwelveAndPara(phone) {
if (phone.length != 12) return false;
var pass = true;
for (var i = 0; i < phone.length; i++) {
var c = phone.charAt(i);
if (i == 0) {
if (c != '(') {
pass = false;
}
}
if (i == 4) {
if (c != ')') {
pass = false;
}
}
else {
if (!isDigit(c)) {
pass = false;
}
}
}
return pass;
}