我编写了以下闭包,它应该返回一个字符串,但它返回一个函数对象。我在这里做错什么了?
BDS.CDNS = (function() {
var DEVROOT;
var TESTROOT = '/';
var PRODROOT = '/';
var _IsSecure;
return {
CDN1: function CDN1() {
if (BDS.ENV === BDS.ENV_OPTIONS.DEV) {
return (_IsSecure ? BDS.SECUREPROTOCOL : BDS.UNSECUREPROTOCOL) + DEVROOT;
}
else if (BDS.ENV === BDS.ENV_OPTIONS.TEST) {
return (_IsSecure ? BDS.SECUREPROTOCOL : BDS.UNSECUREPROTOCOL) + TESTROOT;
}
else if (BDS.ENV === BDS.ENV_OPTIONS.PROD) {
return (_IsSecure ? BDS.SECUREPROTOCOL : BDS.UNSECUREPROTOCOL) + PRODROOT;
}
return '';
}
}());调用BDS.CDNS.CDN1 =>函数对象时。它应该返回一个字符串。
谢谢。
发布于 2013-08-19 16:14:37
当您引用BDS.CDNS.CDN1时,您将得到一个函数对象,因为它是一个函数。为了执行这个函数,您需要包括括号:
BDS.CDNS.CDN1();https://stackoverflow.com/questions/18318353
复制相似问题