【发布时间】:2016-12-22 16:50:47
【问题描述】:
有人能解释一下如何正确地做到这一点
foo(); //outputs 'foo'
function foo(){
console.log('foo');
}
但这给出了“函数未定义”错误
MY_NAME_SPACE ={};
MY_NAME_SPACE.foo(); //undefined
MY_NAME_SPACE.foo = function(){
console.log('foo');
}
我可以看到,在第二个示例中,调用是在将函数添加到 My_NAME_SPACE 对象之前进行的,但如果是这种情况,如果排序很重要,如何使用这种类型的“命名空间”?
【问题讨论】:
-
要更清楚一点......我知道这个错误正在发生,因为我在它被声明/添加到对象之前调用了该函数。但是,我正在阅读有关使用这种类型的“命名空间”来避免具有重复名称等的函数的信息,但您现在似乎不得不担心代码/函数的顺序?
-
您只是在创建命名空间之前不会使用它?
标签: javascript namespaces undefined