js return和匿名函式

2021-06-27 22:44:52 字數 563 閱讀 8886

今天乙個剛學js的朋友給了我一段**問為什麼方法不執行,**如下:

**如下:

function makefunc(x)   } 

alert(makefunc(0)); 

其實不是不執行,只是朋友的意思這裡alert出來的應該是「0」,而不是function ()。 

不是指令碼寫錯了,只是沒搞懂return,從當前函式退出,並從那個函式返回乙個值。如果返回的是乙個函式,那麼返回的也是函式本身。 

可以這樣修改上面的**,就是alert(makefunc(0)()): 

如果要返回函式執行的結果那麼首先要讓這個函式執行,例如:

**如下:

function makefunc(x) )();  } 

alert(makefunc(0)); 

這裡有乙個匿名函式, 

**如下:

(function ())(); 

在第乙個括號內是匿名函式,第二個括號用於呼叫該匿名函式,您可以在第二個括號中傳入所需的引數。例如: 

**如下:

(function( x , y))(2 ,3 ); 

高階函式和匿名函式

1.高階函式 高階函式就是把函式當成引數傳遞的函式。例如 def add x,y,f return f x f y print add 4,3,abs 結果是 7 map 函式 map 函式的python內建的高階函式,他接受乙個函式f 和引數list,並把list的元素傳遞給函式f,然後返回乙個函...

Scala函式和匿名函式

一 函式是第一等公民 1 把函式作為實參傳遞給另外乙個函式。2 把函式作為返回值。3 把函式賦值給變數。4 把函式儲存在資料結構裡。在scala中,函式就像普通變數一樣,同樣也具有函式的型別。二 函式型別 1 定義 在scala語言中,函式型別的格式為a b,表示乙個接受型別a的引數,並返回型別b的...

lambda函式和匿名函式

lambda表示式可以用來宣告匿名函式,實際生成了乙個函式物件,該表示式的計算結果就是函式的返回值。lambda表示式的基本語法如下 lambda arg1,arg2,arg3.1 lambda表示式的使用 f1 lambda a,b,c a b c print f1 print f1 2,3,4 ...