第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

JS面試題,等一個大佬出現(xiàn),解決小弟的疑惑

JS面試題,等一個大佬出現(xiàn),解決小弟的疑惑

FFIVE 2019-03-02 18:12:59
正確答案為0,-8,-14,-14執(zhí)行fn(1),全局i=4,私有n=1。執(zhí)行f(2),全局i=0,私有n=0。執(zhí)行fn(3)(4),全局i=-8 (n--后為2,這里的n我用在了下段代碼的計算中,并且導致和正確答案不相符,如果是用2計算的話,下段執(zhí)行i為0)。執(zhí)行f(5),全局i=-14 {使我想不通的是,為什么此段代碼中的n不是fn(3)(4)執(zhí)行后的n,而是fn(1)中的n}console.log(i) //-14      let i=2         let fn=function(n){             i*=2             return function(m){                 i-=(n--)+(++m)                console.log(i)             }         }        let f=fn(1)         f(2)         fn(3)(4)         f(5)        console.log(i)
查看完整描述

2 回答

?
絕地無雙

TA貢獻1946條經(jīng)驗 獲得超4個贊

每次執(zhí)行fn都會返回一個新的匿名函數(shù) 你的fn(1)返回來的函數(shù)已經(jīng)用一個f變量緩存起來了 所以后面調(diào)用f(2)
f(5) 里面n都是fn(1)里的那個1
fn(3)(4) 首先執(zhí)行fn(3) 返回來一個匿名函數(shù) 這個匿名函數(shù)和fn(1)返回來的匿名函數(shù) 雖然作用是一樣 但其實是兩個匿名函數(shù)

你第一次執(zhí)行f(2) n的值已經(jīng)變成了0
第二次執(zhí)行f(5)的時候 i = -8; m = 5; n = 0
所以i-=(n--)+(++m)的值為-14


查看完整回答
反對 回復 2019-03-02
?
大話西游666

TA貢獻1817條經(jīng)驗 獲得超14個贊

理解下閉包,++n與n++的區(qū)別后,這道題就是個算術題

需要認真才行


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

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號