最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

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

哪位老師能幫我解釋下下面的call([1]),apply([2]),apply({}) 是什么意思啊

哪位老師能幫我解釋下下面的call([1]),apply([2]),apply({}) 是什么意思啊

吳周超 2018-08-09 23:57:43
var object = {test: {doSomeThing() {function fun1 () {return this;}return fun1();},doNextThing() {var fun2 = () => this;return fun2();},doLastThing() {return this;}}};console.log(object.test.doSomeThing()); // windowconsole.log(object.test.doSomeThing.call([1]));//這里的call([1])完全不懂是 //啥意思console.log(object.test.doNextThing.apply([2] ));console.log(object.test.doLastThing.apply({}));//
查看完整描述

1 回答

?
web阿周

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

首先你要理解,[1],[2],{}這三者,都繼承自object原型,而call,apply接收的第一個(gè)參數(shù),就是指定調(diào)用函數(shù)的this對(duì)象的指向,call([1])就代表調(diào)用這個(gè)函數(shù)時(shí),this指向的應(yīng)該是一個(gè)數(shù)組對(duì)象,因此你第一個(gè)函數(shù)doSomeThing,傳入的是數(shù)組對(duì)象[1],但是es5語法中,function函數(shù)會(huì)產(chǎn)生自己的作用域,因此此時(shí)this打印出來又變成了window,但是es6的箭頭函數(shù)不會(huì),所以第二個(gè)函數(shù)doNextThing打印出來的是[2],同理可得第三個(gè)打印出來的就是{}

查看完整回答
反對(duì) 回復(fù) 2018-08-29
  • 1 回答
  • 0 關(guān)注
  • 1187 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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