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

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

閉包 運(yùn)行結(jié)果,麻煩給出詳解,謝謝!

閉包 運(yùn)行結(jié)果,麻煩給出詳解,謝謝!

function fun(n,o) {? console.log(o)? return {? ? fun:function(m){? ? ? return fun(m,n);? ? }? };}var a = fun(0); ?a.fun(1); ?a.fun(2); ?a.fun(3);var b = fun(0).fun(1).fun(2).fun(3);var c = fun(0).fun(1); ?c.fun(2); ?c.fun(3);//答案為//a: undefined,0,0,0//b: undefined,0,1,2//c: undefined,0,1,1
查看完整描述

1 回答

已采納
?
stone310

TA貢獻(xiàn)361條經(jīng)驗(yàn) 獲得超191個(gè)贊

var a = fun(0); ?a.fun(1); ?a.fun(2); ?a.fun(3);

1、fun(0)時(shí),第一個(gè)參數(shù)n為0,第二個(gè)參數(shù)o未設(shè)置,console.log(o)為undefined,return值為:

?{
????fun:function(m){
??????return?fun(m,n);???//n為0
????}

2、a.fun(1);m=1,代入上方return,得出新的return值為fun(1,0),執(zhí)行得出console.log(0),return值為:

?//fun(1,0)return值為:
?{
????fun:function(m){?????
??????return?fun(m,n);???//n為0
????}

3、a.fun(2);m=2,代入上方return,得出新的return值為fun(2,0),執(zhí)行得出console.log(0),return值為:

?//fun(2,0)return值為:
?{
????fun:function(m){?????
??????return?fun(m,n);???//n為0
????}

4、a.fun(3);m=3,代入上方return,得出新的return值為fun(3,0),執(zhí)行得出console.log(0)

var b = fun(0).fun(1).fun(2).fun(3);

當(dāng)執(zhí)行到fun(0)時(shí),與前面a一樣,第二個(gè)參數(shù)未設(shè)置,console.log(o)為undefined;return值為:

?{
????fun:function(m){
??????return?fun(m,n);???//n為0
????}

當(dāng)執(zhí)行到fun(0).fun(1)時(shí),m為1,代入上方return,得出新的return值為fun(1,0),執(zhí)行fun(1,0),console.log(0),return值為:

???//fun(1,0)的return值為:
???{
????fun:function(m){
??????return?fun(m,n);??//n為1
????}

當(dāng)執(zhí)行到fun(0).fun(1).fun(2)時(shí),m為2,代入上方return,得出新的return值為fun(2,1),執(zhí)行fun(2,1),console.log(1),return值為:

???//fun(2,1)的return值為:
???{
????fun:function(m){
??????return?fun(m,n);??//n為2
????}

當(dāng)執(zhí)行到fun(0).fun(1).fun(2).fun(3)時(shí),m為3,代入上方return,得出新的return值為fun(3,2),執(zhí)行fun(3,2),console.log(2);

var c = fun(0).fun(1); ?c.fun(2); ?c.fun(3);

當(dāng)fun(0)時(shí),與前面b一致,undefined;

當(dāng)fun(0).fun(1)時(shí),與前面b一致,console.log(0);

c=fun(0).fun(1);return為:

???{
????fun:function(m){
??????return?fun(m,n);??//n為1
????}

因此c.fun(2)就是fun(0).fun(1).fun(2),與前面b一致,console.log(1);

因此c.fun(3)就是fun(0).fun(1).fun(3),m=3,代入上方return,得出新的retrun:fun(3,1);

得出結(jié)果console.log(1)


查看完整回答
2 反對 回復(fù) 2016-10-10
  • 1 回答
  • 0 關(guān)注
  • 2044 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

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