為什么下面會報錯 “m is not a function”為什么下面兩個函數輸出的結果不一樣
JS這幾個基礎的函數不是很理解
暮色呼如
2018-09-11 13:26:52
TA貢獻1890條經驗 獲得超9個贊
圖1:
var m = plus();
m等于plus函數的返回值 因為沒有返回值 則為undefinded
當你執行m()的時候就是m為undefined
圖2:
函數plus有返回值, 是一個方法; 則當你調用plus的時候(plus())則輸出他的返回方法
圖3:
var m = plus();
m等于plus函數執行后的返回值 為一個function 函數體為console.log一個數字
當你執行m()的時候首先就會執行一個console.log
然后下方的undefined 為m()執行的返回值, 因為沒有設置返回值則為undefined
舉報