亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求大佬幫解答 js這個參數傳遞的問題

求大佬幫解答 js這個參數傳遞的問題

江戶川亂折騰 2019-03-13 10:15:15
var pow2 = make_pow(2);說明把參數n=2傳進去了,可是為什么打印出來pow2時,參數n沒有被賦值?
查看完整描述

4 回答

?
元芳怎么了

TA貢獻1798條經驗 獲得超7個贊

var pow2=make_pow(2);//pow2是個function

//如果調用,則應該這樣:

pow2();


查看完整回答
反對 回復 2019-04-03
?
呼喚遠方

TA貢獻1856條經驗 獲得超11個贊

我的理解:console.log是打印出引用的字符串形式,而且沒有運行pow2,參數此時是形參。而你想要的賦值是指運行時發生的。


查看完整回答
反對 回復 2019-04-03
?
慕田峪4524236

TA貢獻1875條經驗 獲得超5個贊

打印出來的是個函數,該函數是什么就打印什么,不會根據上下文的環境自動賦值,一個簡單直觀的例子:


let a = 3;

function fun(){

    return a

}

// 打印出來肯定是 'func(){return a}'

// 即使我們知道a值是3,但是機器并不知道,要等到運行的時候,分析作用域,上下文,才知道要輸出什么

console.log(fun)


查看完整回答
反對 回復 2019-04-03
?
呼啦一陣風

TA貢獻1802條經驗 獲得超6個贊

你的make_pow返回的就是一個函數,在JS中,函數也是對象,所以可以作為返回值。你要得到正確結果得這樣:


var pow2=make_pow(2);

console,log(pow2(3)); // 9

至于pow2為什么能夠保存n的值,則是涉及到閉包問題了。


查看完整回答
反對 回復 2019-04-03
  • 4 回答
  • 0 關注
  • 469 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號