2011-08-29 178 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