Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.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模块模式未按预期工作_Javascript_Validation_Design Patterns_Module - Fatal编程技术网

Javascript模块模式未按预期工作

Javascript模块模式未按预期工作,javascript,validation,design-patterns,module,Javascript,Validation,Design Patterns,Module,当我在Webstorm中编写以下内容时,它不起作用。我得到“预期函数名”。非常感谢您的帮助。我正在使用第81页的《面向对象Javascript的原理》一书作为指南 var validator = (function () { //source: https://www.w3resource.com/javascript/form/email-validation.php var EMAIL_PATTERN = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~

当我在Webstorm中编写以下内容时,它不起作用。我得到“预期函数名”。非常感谢您的帮助。我正在使用第81页的《面向对象Javascript的原理》一书作为指南

var validator = (function ()
{
    //source: https://www.w3resource.com/javascript/form/email-validation.php
    var EMAIL_PATTERN = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;

    return
    {
        validateEmail: function(email)
        {
            return EMAIL_PATTERN.test(email);
        }
    };
}());

console.log(validator.validateEmail("whatever@somewhere.com"));

这看起来只是你的返回声明的一个问题

var validator = (function ()
{
    //source: https://www.w3resource.com/javascript/form/email-validation.php
    var EMAIL_PATTERN = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;

    return {
        validateEmail: function(email)
        {
            return EMAIL_PATTERN.test(email);
        }
    };
}());

console.log(validator.validateEmail("whatever@somewhere.com"));

是正确的版本。

谢谢!我对你的答案投了赞成票。你认为这是因为javascript语法还是webstorm语法检查?这是因为javascript的解释器。有关更多详细信息,请参见本文Good ole’Javascript。哈哈,谢谢你们两个的链接。