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

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

關于Js中 this的一道題

關于Js中 this的一道題

哆啦的時光機 2019-05-25 17:30:37
varlength=10;functioncl(){console.log(this.length);}varo={length:20,show:function(fn){fn();arguments[0]();}}o.show(cl);//10關于這道題我想知道js中this不是誰調用就指向誰么?為什么第一次調用cl中的this還是指向window而不是o對象?我知道沒有用call估計就不對了,但是為什么不對呢?第二個有為什么指向了arguments?同時這段代碼在nodejs中運行時為什么第一次輸出為undifined?
查看完整描述

2 回答

?
溫溫醬

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

直接使用函數(shù)名字調用,無論你外面包了多少層,調用者就是window。
因為那個方括號運算符,方括號運算符作為對象取值運算,在某種意義上是可以等于點.運算符的,所以這里在形式上其實可以類比成arguments.0(),你看,這不就是arguments來調用了這個函數(shù)了嘛,所以運行的時候this就指向它了。
                            
查看完整回答
反對 回復 2019-05-25
?
慕標琳琳

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

this的指向不是在聲明的時候確定的而是在調用的時候被定義的有這么幾種情況
普通函數(shù)調用,this為全局對象或是undefined
作為對象的方法,this為那個對象
new表達式,this為以該函數(shù)為原型的新創(chuàng)建的對象
使用apply/call指定this
用bind綁定固定的this
事件處理函數(shù)中的this是當前的觸發(fā)事件的DOM元素(event.currentTarget)
不知道對你有沒有幫助
                            
查看完整回答
反對 回復 2019-05-25
  • 2 回答
  • 0 關注
  • 432 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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