亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

問一個apply和call問題

問一個apply和call問題

var func = function(arg1, arg2) {?????};func.call(this, arg1, arg2);func.apply(this, [arg1, arg2])這里的this指的是不是func函數
查看完整描述

2 回答

已采納
?
Samaritan

TA貢獻61條經驗 獲得超38個贊

在 js 中 this 代表的是當前的 context,也就是執行環境,你的例子如果直接卸載最外層,this 就是 window

使用 call 或者 apply 第一個參數是一個對象(你例子中傳入的是 this),這個對象的作用是作為 func 函數執行的環境

window.x?=?0;

function?func(){
  alert(this.x);
}

var?obj?=?{
??x:?1,
??m:?func
};

obj.func.apply(this);?//?0
obj.func.apply(window);?//?0
obj.func.apply(obj);?//?1


查看完整回答
反對 回復 2017-10-14
?
cxxyjsj

TA貢獻119條經驗 獲得超22個贊

call和apply方法的第一個參數是指方法的作用對象,也就是func中this的值。

可以類比java中Method.invoke的第一個參數。

查看完整回答
反對 回復 2017-10-14
  • 2 回答
  • 0 關注
  • 1263 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號