Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS如何验证手机号码_Javascript_Numbers_Include - Fatal编程技术网

Javascript JS如何验证手机号码

Javascript JS如何验证手机号码,javascript,numbers,include,Javascript,Numbers,Include,我是新来的,因为我被问到了这个问题 创建一个函数,该函数将接收移动电话号码的字符串。如果号码是有效的英国号码,则返回true;如果不是,则返回false 有效的手机号码可以以“07”开头,然后再加9位数字。 它也可以以“+447”开头,后跟9个以上的数字。 它也可以以“00447”开头,后跟9个以上的数字。 其他任何东西都是无效的 这是我创建的代码 function validMobileNumber(num) { if (num.length != 9) {

我是新来的,因为我被问到了这个问题

创建一个函数,该函数将接收移动电话号码的字符串。如果号码是有效的英国号码,则返回true;如果不是,则返回false

有效的手机号码可以以“07”开头,然后再加9位数字。 它也可以以“+447”开头,后跟9个以上的数字。 它也可以以“00447”开头,后跟9个以上的数字。 其他任何东西都是无效的

这是我创建的代码

function validMobileNumber(num) {
    if (num.length != 9) 
    {
        return false
    }
    if (num.length = 9 && num.includes(07, 0) && num.includes(+447, 0) && num.includes(00447, 0)) {
        return true
    }
}
我的代码将针对此运行

describe("validMobileNumber", () => {
    it("returns false when passed a string of the wrong length", () => {
        expect(validMobileNumber("123")).to.equal(false);
        expect(validMobileNumber("0750617250638")).to.equal(false);
        expect(validMobileNumber("+447712368768724988")).to.equal(false);
    });
    it("returns true when passed a valid plain phone num string", () => {
        expect(validMobileNumber("07506172506")).to.equal(true);
    });
    it("returns true when passed a valid string with a + prefix", () => {
        expect(validMobileNumber("+447506172506")).to.equal(true);
    });
    it("returns true when passed a valid international phone num", () => {
        expect(validMobileNumber("00447506172506")).to.equal(true);
    });
    it("returns false when passed a string with invalid chars", () => {
        expect(validMobileNumber("07506189foo")).to.equal(false);
    });
    it("returns true when passed random other valid phone numbers", () => {
        expect(validMobileNumber("00447555123456")).to.equal(true);
        expect(validMobileNumber("+447676111222")).to.equal(true);
        expect(validMobileNumber("07898888643")).to.equal(true);
        expect(validMobileNumber("07766555432")).to.equal(true);
        expect(validMobileNumber("07989765490")).to.equal(true);
    });
    it("returns false when passed random other invalid phone numbers", () => {
        expect(validMobileNumber("004475551&&&23456")).to.equal(false);
        expect(validMobileNumber("-447676111222")).to.equal(false);
        expect(validMobileNumber("09898888643")).to.equal(false);
        expect(validMobileNumber("+449166555432")).to.equal(false);
        expect(validMobileNumber("00448989765493")).to.equal(false);
        expect(validMobileNumber("cats")).to.equal(false);
    });
}); 

有人对ta如何使我的代码正常运行有什么建议吗

您可以使用正则表达式。正则表达式。{}

我很无聊,所以我给你写了这封信

validMobileNumber(“123”);/。等于(假);
有效移动号码(“0750617250638”);/。等于(假);
有效移动号码(“+447712368768724988”);/。等于(假);
有效移动号码(“07506172506”);/。等于(真);
有效移动号码(“+447506172506”);/。等于(真);
有效移动号码(“00447506172506”);/。等于(真);
有效移动号码(“07506189foo”);/。等于(假);
有效移动号码(“00447555123456”);/。等于(真);
有效移动号码(“+447676111222”);/。等于(真);
有效移动号码(“07898888643”);/。等于(真);
有效移动号码(“07766555432”);/。等于(真);
有效移动号码(“07989765490”);/。等于(真);
有效移动号码(“004475551&&23456”);/。等于(假);
有效移动号码(“-447676111222”);/。等于(假);
有效移动号码(“09898888643”);/。等于(假);
有效移动号码(“+449166555432”);/。等于(假);
有效移动号码(“猫”);/。等于(假);
函数validMobileNumber(编号){
设正则表达式=/((07)|(\+|00)447)){1}[0-9]{9}\b/,
结果=正则表达式测试(编号);
控制台日志(编号、结果);
返回结果;
}