Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中调用嵌套函数_Javascript - Fatal编程技术网

如何在javascript中调用嵌套函数

如何在javascript中调用嵌套函数,javascript,Javascript,我从网上复制了一些代码,其格式代码如下 ( function() { function finder(){ var findval = { find : function(){ console.log("call this Function"); } }; } }); 我想打印调用此函数 我试着这样做 finder.findval.find(); 当我调用此命令时,将发生以下

我从网上复制了一些代码,其格式代码如下

( function() {
    function finder(){ 
       var findval = {
           find : function(){
              console.log("call this Function");
           }
       };
    }
});
我想打印
调用此函数

我试着这样做

finder.findval.find();
当我调用此命令时,将发生以下错误

 VM205:1 Uncaught ReferenceError: finder is not defined
         at <anonymous>:1:1
但它不起作用。我该怎么做。有人请帮帮我。

怎么样

var finder = {
    findval: {
        find(){
            console.log("call this Function");
        }
    }
}

请参阅下面的代码片段。您需要返回findval对象

( function() {
 function finder(){ 
   var findval = {
       find : function(){
          console.log("call this Function");
       }

   };
   return findval;
 }

 outsidecall = function(){ 
    var findval = finder();
    findval.find();
 }

 outsidecall();
})();

您需要将其分配给第一个匿名函数作用域之外的变量。删除代码的第一行和最后一行,并将
var findval
替换为
this.findval
。您正在创建内部函数,该函数仅对内部作用域可见……从该代码中无法获取
finder.findval.find()开始工作
findval
不是一个属性。一些解释在这里会很有帮助。谢谢你,兄弟,这对我来说很好:)它对我很有效
( function() {
 function finder(){ 
   var findval = {
       find : function(){
          console.log("call this Function");
       }

   };
   return findval;
 }

 outsidecall = function(){ 
    var findval = finder();
    findval.find();
 }

 outsidecall();
})();