2011-08-29 99 views
7
<script> 
    var sample = function() { 
     (function() { 
      return "something" 
     })(); 
     // how can I return it here again? 
    } 
</script> 

有没有办法从父函数中的匿名函数再次返回值或我需要使用已定义的函数来获取返回的值?谢谢! :)JavaScript - 从匿名函数返回(varScope)

+0

好的,我很笨。只需在匿名函数之前放置'return'并完成。大声笑。 – headacheCoder

+0

嗯,将自执行的结果存储在一个变量中,或者直接“返回”它? – delnan

回答

6

只需将return语句放在您调用函数的位置即可。

<script> 
    var sample = function() { 
     return (function() { // The function returns when you call it 
      return "something" 
     })(); 
    } 
</script> 
+0

@jAndy - 不,它与'return confirm('really?')'是一样的。该函数被调用并且它的返回值依次返回。你必须离开'()'才能返回函数本身。 – Quentin