使用函数myFunction()语法时,在javascript中为函数命名名称空间
我想在MyNamespace中命名一些函数。我想首先我会创建一个对象使用函数myFunction()语法时,在javascript中为函数命名名称空间,javascript,oop,Javascript,Oop,我想在MyNamespace中命名一些函数。我想首先我会创建一个对象MyNamespace,然后在其中定义函数 如何在仍然使用函数myThing(){…}格式的情况下将函数分配给命名空间?这个语法是什么样子的 无法使用的对象语法: var MyNamespace = { function helloWorld() { console.log('hi!'); } function goodbyeWorld() { console.log('I <3 Titani
MyNamespace
,然后在其中定义函数
如何在仍然使用函数myThing(){…}
格式的情况下将函数分配给命名空间?这个语法是什么样子的
无法使用的对象语法:
var MyNamespace = {
function helloWorld() {
console.log('hi!');
}
function goodbyeWorld() {
console.log('I <3 Titanic');
}
}
MyNamespace.helloWorld();
var MyNamespace={
函数helloWorld(){
console.log('hi!');
}
函数goodbyeWorld(){
console.log('I您的第二个示例是最常用的方式。按此顺序使用“function name()”没有任何技术优势。还有另一种选择:
function wrapper() {
function helloWorld() {
}
function privateFunction() { }
return {
helloWorld: helloWorld
};
}
在这种情况下,您还可以声明命名空间私有函数,就像那里的函数一样。helloWorld可以调用privateFunction,但外部的任何函数都不能直接调用它。(注意,所有公共函数都需要在返回的对象中)
要自动实例化,请执行以下操作:
// in the ... insert my above example
window.mynamespace = (...)();
第二个示例是最常用的方法。按此顺序使用“function name()”没有任何技术优势。还有另一种选择:
function wrapper() {
function helloWorld() {
}
function privateFunction() { }
return {
helloWorld: helloWorld
};
}
在这种情况下,您还可以声明命名空间私有函数,就像那里的函数一样。helloWorld可以调用privateFunction,但外部的任何函数都不能直接调用它。(注意,所有公共函数都需要在返回的对象中)
要自动实例化,请执行以下操作:
// in the ... insert my above example
window.mynamespace = (...)();
您可以像在这里一样在原始对象中声明它们:
var MyNamespace = {
helloWorld: function() {
console.log('hi!');
},
goodbyeWorld: function() {
console.log('I <3 Titanic');
}
}
MyNamespace.helloWorld();
MyNamespace.goodbyeWorld();
var MyNamespace={
helloWorld:function(){
console.log('hi!');
},
再见World:function(){
log('I您可以像这里一样在原始对象中声明它们:
var MyNamespace = {
helloWorld: function() {
console.log('hi!');
},
goodbyeWorld: function() {
console.log('I <3 Titanic');
}
}
MyNamespace.helloWorld();
MyNamespace.goodbyeWorld();
var MyNamespace={
helloWorld:function(){
console.log('hi!');
},
再见World:function(){
console.log('I Nice Katana-这仍然允许我直接调用wrapper.helloWorld()
,而不必先实例化wrapper?@DonnyP,并使用赋值和wrapper
作为一个,当然..Nice Katana-这仍然允许我直接调用wrapper.helloWorld()
无需先实例化包装器?@DonnyP,并带有赋值和包装器,当然。