文章詳情頁
javascript - js一個(gè)call和apply的問題?
瀏覽:285日期:2023-02-14 17:03:55
問題描述
Array.call(null,{length:3}//返回[{length:3}]Array.apply(null,{length:3})//返回[undefined, undefined, undefined]
call和apply都是改變this指向,到這里結(jié)果卻不一樣,詭異了
問題解答
回答1:寫這里,方便看。
call:第一個(gè)是直接傳對(duì)象進(jìn)去;
apply:第二個(gè)是當(dāng)成數(shù)組長度為3的數(shù)組,但沒有值,所以u(píng)ndefined{length: 3} => {length: 3, 0: undefined, 1: undefined, 2: undefined }所以輸出3個(gè)undefined
call接受的是連續(xù)參數(shù),apply接受的是數(shù)組參數(shù)。A.call(this, a,b,c,d)A.apply(this, [a,b,c,d])
回答2:call()方法第二個(gè)參數(shù)是數(shù)組里面的一項(xiàng),
apply()方法第二個(gè)參數(shù)是一個(gè)數(shù)組
標(biāo)簽:
JavaScript
上一條:javascript - slideToggle實(shí)現(xiàn)折疊菜單效果,但是怎么實(shí)現(xiàn)單擊這個(gè)選項(xiàng)展開,其他選項(xiàng)自動(dòng)折疊呢?下一條:javascript - 關(guān)于動(dòng)態(tài)加載后再綁定事件,事件不起作用的提問
相關(guān)文章:
1. golang - 用IDE看docker源碼時(shí)的小問題2. javascript - 請(qǐng)指條明路,angular的$event,在select中卻是undefined?3. 前端 - @media query 使用出現(xiàn)的問題?4. 我何時(shí)應(yīng)該在Java中使用JFrame.add(component)和JFrame.getContentPane()。add(component)5. html - css氣泡,實(shí)現(xiàn)“倒三角(不知道算不算三角了)”可透明的。6. 運(yùn)行python程序時(shí)出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯(cuò)誤?7. docker - 如何修改運(yùn)行中容器的配置8. 利用IPMI遠(yuǎn)程安裝centos報(bào)錯(cuò)!9. phpstudy8.1沒集成mysql-front10. html5和Flash對(duì)抗是什么情況?
排行榜

熱門標(biāo)簽
網(wǎng)公網(wǎng)安備