Javascript 如何在模块中声明2个函数
嗨,我有一个模块require.js:Javascript 如何在模块中声明2个函数,javascript,requirejs,amd,Javascript,Requirejs,Amd,嗨,我有一个模块require.js: define([], function() { return { test:function (value,element,params ) { if (value.length == 0 && params.mandatory === "True") return false; return true; } } }); 我需要在这个模块
define([], function() {
return {
test:function (value,element,params )
{
if (value.length == 0 && params.mandatory === "True")
return false;
return true;
}
}
});
我需要在这个模块中添加第二个函数“test2”,我如何才能做到这一点呢?很简单,您返回的是一个对象文本,所以向它添加另一个属性:
define([], function() {
return {
test:function (value,element,params )
{
if (value.length == 0 && params.mandatory === "True")
{
return false;
}
return true;
},//<-- comma to separate properties, much like {foo:'bar', val: 1234}
test2: function()
{//here's test2 definition
}
};
});
@user1428798:请注意两个属性之间的逗号(
,
)。是的,我忽略了逗号:)
define([], function()
{
var mod = {};
mod.test = function(value, element, params)
{
return !(value.length == 0 && params.mandatory === "True");//does the same as your code
};
mod.test2 = function()
{
var value = 'foobar', params = {mandatory: true};//instead of checking True, pass bool if possible?
return mod.test(value, null, params);//instead of this: much safer!
};
return mod;//return object here
}