我有一个javascript命名空间设置,如:
(function (skillet, $, undefined) {
skillet.messages: {
pages: {
logon: {
errors: {
username: 'user is wrong'
}
}
}
};
} (window.skillet = window.skillet || {}, jQuery));
除了不断输入外,是否有更有效的方法来访问它:
skillet.messages.pages.logon.errors.username
从其他功能访问时?
答案 0 :(得分:4)
如果你经常使用某个命名空间,你可以为它创建一个别名:
var shortcut = skillet.messages.pages.logon
shortcut.errors.username
答案 1 :(得分:2)
通过skillet.messages.pages.logon.errors.username
访问将很快,因为原型链不必走路。但是,如果您多次使用名称空间,则可以为其创建别名(分配给本地变量):
var errors = skillet.messages.pages.logon.errors;
...
答案 2 :(得分:1)
我会做这样的事情:
function getErrors() {
return skillet.messages.pages.logon.errors;
}
alert( getErrors().username );
它确实是一样的,但是你的代码更清晰。