访问函数内部对象的功能

时间:2014-10-13 18:21:24

标签: javascript

我知道这听起来很奇怪,但请耐心等待。

我有一个这样的对象:

Functions = {
    function1: function() {
        function2: function() {
            alert('bam');
        }
    }
}

如何解雇function2?我尝试了Functions.function1.function2Functions.function1().function2()但没有效果。我做错了吗?

2 个答案:

答案 0 :(得分:1)

以下是两次返工:

保留function2标签

Functions = {
    function1: function() {
        function2: 
          (function() {
            alert('bam');
          })();      
    }
};

Functions.function1(); // You still can't access the label function2 however

删除function2标签(转回

Functions = {
    function1: function() {
        return function() {
            alert('bam');
        };
    }
};

Functions.function1()();

底线是代码不能正常工作,因为你不能将标签看作是函数的属性。

从函数1调用function2的最接近(据我所知)是(没有return语句):

Functions = {
    function1: function() {
    }
};

Functions.function1.function2 = function() {
  alert("bam");
};

Functions.function1.function2();

答案 1 :(得分:0)

 var test_func = {
        test1:function(){
           console.log("test1")
           return {
               test2:function(){
                  console.log("test2")
               }
           }
        }
    }
      test_func.test1().test2()