好的,过去 3 个小时我一直在努力寻找解决方案...
我希望能够创建自己的库、函数内的可访问函数等。
这是我想做的...
var outer=function()
{
this.inner=function()
{
this.innermost=function()
{
alert("innermost");
}
}
}
var outer=new outer;
function start()
{
//I want to call it like this but fails!
outer.inner.innermost();
}
现在当我尝试调用最里面时失败了。但是,如果我在一个函数中只有一个函数,它就可以工作。例如:
var outer=function()
{
this.inner=function()
{
alert("inner");
}
}
var outer=new outer;
function start()
{
// this works
outer.inner();
}
我找到的所有示例都只显示函数中的函数。
我希望能够创建自己的函数库。通过一种简单的方式访问它们,例如:
MyLib.SubLib.SubLib2.function
MyLib.SubLib.SubLib2.property
如有任何帮助,我们将不胜感激。我必须学习和使用原型(prototype)吗?
最佳答案
首先,这是你如何做的:
var outer = function() {
this.inner = {
innermost: function() {
alert("innermost");
}
}
}
var outer = new outer;
outer.inner.innermost();
它没有像您那样工作的原因是因为您定义了一个函数 inner
- 所以 outer.inner
是一个函数。你可以做 var inner = new (outer.inner)();
然后调用inner.innermost();
但这显然是丑陋的,而不是你想要的。
关于javascript - 函数内的函数内的 JS 函数等等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14450191/