導航:首頁 > 編程語言 > jsfunctionthis

jsfunctionthis

發布時間:2024-11-16 16:26:57

javascript中的this到底指什麼

JavaScript:this是什麼?

定義:this是包含它的函數作為方法被調用時所屬的對象。
說明:這句話有點咬嘴,但一個多餘的字也沒有,定義非常准確,我們可以分3部分來理解它!
1、包含它的函數。2、作為方法被調用時。3、所屬的對象。
看例子:
function to_green(){
this.style.color="green";
}
to_green();
上面函數中的this指的是誰?
分析:包含this的函數是,to_green
該函數作為方法被調用了
該函數所屬的對象是。。?我們知道默認情況下,都是window對象。
OK,this就是指的window對象了,to_green中執行語句也就變為,window.style.color="green"
這讓window很上火,因為它並沒有style這么個屬性,所以該語句也就沒什麼作用。
我們在改一下。

window.load=function(){
var example=document.getElementById("example");
example.onclick=to_green;
}
這時this又是什麼呢?
我們知道通過賦值操作,example對象的onclick得到to_green的方法,那麼包含this的函數就是onclick嘍,
那麼this就是example引用的html對象嘍。
this的環境可以隨著函數被賦值給不同的對象而改變!
下面是完整的例子:

<script type="text/javascript">
function to_green(){
this.style.color="green";
}
function init_page(){
var example=document.getElementById("example");
example.onclick=to_green;
}
window.onload=init_page;
</script>
<a href="#" id="example">點擊變綠</a>

js中this代表什麼意思

代表當前對象啊,js不是有document.getElementByID通過ID獲取對象么,this就是獲取當前對象,比如id為btn的按鈕內的onclick方法 onclick="method(容this)",這個this就是當前按鈕對象,作用和document.getElementByID("btn")一樣。

Ⅲ 關於js的with和this ,function的一段代碼,求解釋

<!DOCTYPEHTML>
<html>
<head>
<title>yugi</title>
<metacharset=UTF-8/>
<styletype="text/css">
</style>
<scripttype="text/javascript"src="jquery-1.8.0.min.js"></script>
<scripttype="text/javascript">
(function()
{
with(this[2])
{
with(this[1])
{
with(this[0])
{
returnfunction(event)
{
//意思是調用this[2].this[1].this[0].checkChoice();
//使用with語句,代表{}內部屬於with()中的對象的屬性或者方法
//但是使用with語句,不易於修改和維護。此話源自js權威指南。
returncheckChoice()
};
}
}
}
})();
</script>
</head>
<body>
</body>
</html>

Ⅳ javascript 的 this 指向問題

js 中的this分兩種情況,普通函數中的 this 指向取決於調用的環境,lambda表達式中的this指向window。

apply 方法的的說明如下:

Function.apply(obj,args)方法能接收兩個參數
obj:這個對象將代替Function類里this對象
args:這個是數組,它將作為參數傳給Function(args-->arguments)

題主這個Programmer如果當成構造方法使用,this 應指向new的對象

Ⅳ javascript中,一個js中的函數,第一句var _this = this;為什麼要這樣做 下面是源碼:

問題一:
不知道樓主有沒有接觸過jquery jquery里邊有一個特別典型的例子能說內明用_this的作用
$("#btn").click(function(){
var _this = this;//這里容this和_this都代表了"#btn"這個對象
$(".tr").each(function(){
this;//在這里this代表的是每個遍歷到的".tr"對象
_this;//仍代表"#btn"對象
})
})
這種情況就是在一個代碼片段里this有可能代表不同的對象,而編碼者希望_this代表最初的對象
問題2:
其實並沒有全部使用_this
但是據我所看,應該沒有任何區別的,樓主的代碼里用_this可能只是為了編碼規范吧

閱讀全文

與jsfunctionthis相關的資料

熱點內容
ciscoccna教程 瀏覽:363
ps直線工具變成箭頭 瀏覽:572
微信麗人貸款申請條件 瀏覽:290
ps預設色調放在哪個文件夾 瀏覽:991
女生不幹編程干什麼 瀏覽:314
數據安全測評的方法有哪些 瀏覽:754
交友約會APP哪個好 瀏覽:899
js修改css字體顏色 瀏覽:51
gotoxy是哪個編程語言 瀏覽:893
win10手機鏈接上網好慢 瀏覽:542
電腦怎麼向魅族mx4傳輸文件 瀏覽:534
多少條數據的表屬於大表 瀏覽:348
三星s7edge懸浮窗教程 瀏覽:523
網監半小時可傳多少數據 瀏覽:871
求隱藏手機文件的軟體 瀏覽:487
網站下載東西怎麼選儲存位置 瀏覽:999
java時間相差多少年 瀏覽:623
什麼是移動網路指標提升 瀏覽:190
打馬是什麼意思網路用語 瀏覽:764
葯膳app 瀏覽:545

友情鏈接