文章詳情頁(yè)
javascript - js一個(gè)call和apply的問(wèn)題?
瀏覽:287日期:2023-02-14 17:03:55
問(wèn)題描述
Array.call(null,{length:3}//返回[{length:3}]Array.apply(null,{length:3})//返回[undefined, undefined, undefined]
call和apply都是改變this指向,到這里結(jié)果卻不一樣,詭異了
問(wèn)題解答
回答1:寫(xiě)這里,方便看。
call:第一個(gè)是直接傳對(duì)象進(jìn)去;
apply:第二個(gè)是當(dāng)成數(shù)組長(zhǎng)度為3的數(shù)組,但沒(méi)有值,所以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)展開(kāi),其他選項(xiàng)自動(dòng)折疊呢?下一條:javascript - 關(guān)于動(dòng)態(tài)加載后再綁定事件,事件不起作用的提問(wèn)
相關(guān)文章:
1. angular.js - angular內(nèi)容過(guò)長(zhǎng)展開(kāi)收起效果2. dockerfile - [docker build image失敗- npm install]3. 在windows下安裝docker Toolbox 啟動(dòng)Docker Quickstart Terminal 失??!4. docker-compose中volumes的問(wèn)題5. golang - 用IDE看docker源碼時(shí)的小問(wèn)題6. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問(wèn)題7. mac里的docker如何命令行開(kāi)啟呢?8. 我在centos容器里安裝docker,也就是在容器里安裝容器,報(bào)錯(cuò)了?9. docker內(nèi)創(chuàng)建jenkins訪(fǎng)問(wèn)另一個(gè)容器下的服務(wù)器問(wèn)題10. nignx - docker內(nèi)nginx 80端口被占用
排行榜

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