導航:首頁 > 編程語言 > 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相關的資料

熱點內容
js驗證checkbox是否勾選 瀏覽:991
qq520紅包病毒是真的嗎 瀏覽:875
文件夾里的數字是什麼 瀏覽:118
us數據線怎麼連接車載音樂 瀏覽:320
撥號晶元程序寫入 瀏覽:847
掃描到電腦文件位置 瀏覽:941
微信里怎麼錄音文件 瀏覽:527
vba連接sql資料庫 瀏覽:943
iphone不用數據線怎麼連接電腦 瀏覽:865
分享文件文件名後有數字 瀏覽:940
6s4G網路怎麼設置 瀏覽:197
72版本神器知識新上限 瀏覽:92
logo程序下載 瀏覽:873
led屏幕編程是什麼意思 瀏覽:338
在linux如何修改文件內容 瀏覽:378
如何找出a列不等於b列的數據 瀏覽:472
金磚五國青年哪個app好 瀏覽:442
word2007橫向縱向混排 瀏覽:13
有什麼免費看英語單詞的app嗎 瀏覽:386
蘋果5s一直搜索網路 瀏覽:51

友情鏈接