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

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

JavaScript 函數中的this關鍵字?

JavaScript 函數中的this關鍵字?

狐的傳說 2019-02-06 10:07:27
function alertk() {alert(this);}alertk() ;執行這個事件,返回object,為什么不是function 。this不是指當前的alertk(函數嗎?
查看完整描述

3 回答

?
叮當貓咪

TA貢獻1776條經驗 獲得超12個贊

調用函數時this為window對象,可以alert(this==window)試試
但在嚴格模式下為undefined,js代碼第一行寫"use strict";開啟嚴格模式

把函數設置為對象的一個方法,那么this就等于這個對象了

onclick="btnClick1()"還是普通的調用函數,改成onclick="btnClick1(this)",可以把對象傳進去

或者把函數綁定給dom節點,input.onclick=btnClick1;這樣this==input

查看完整回答
反對 回復 2019-03-24
?
小唯快跑啊

TA貢獻1863條經驗 獲得超2個贊

this關鍵字是有作用域的,而alertk方法相對于this而言,是this的作用域。在<script></script>里面alert(this)的this和在alertk方法里面的alert(this)的this是不對等的。
bir:
function alertk() {
var a=this;//作用域與alertk方法內部
for(var i=0;i<10;i++){
var b=this;//作用域與for循環內部,和什么的this不是用一個
}
}



查看完整回答
反對 回復 2019-03-24
?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

function是類型,this是對象,對象就是object類型,要返回具體類型要用alert(typeof(this));

查看完整回答
反對 回復 2019-03-24
  • 3 回答
  • 0 關注
  • 606 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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