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

熱點內容
如何將cad中的文字復制到word中 瀏覽:772
string轉jsonjs 瀏覽:810
如何反制清潔網路計劃 瀏覽:500
資料庫資料庫實例是什麼意思 瀏覽:756
6splus南京東路蘋果專賣店報價 瀏覽:688
vm獲取配置文件中變數 瀏覽:639
三星note2哪個版本好 瀏覽:405
c程序求5 瀏覽:736
文件圖片去水印去斑點 瀏覽:538
電腦編程哪個語言最萬能 瀏覽:915
計算機網路能傳送的信息是 瀏覽:381
gtx950怎麼升級 瀏覽:502
如何外網共享文件夾 瀏覽:665
excel2010表格工具在哪 瀏覽:935
路由器一個賬號密碼忘了怎麼辦 瀏覽:83
根據內容檢索文件 瀏覽:569
索尼手機文件夾 瀏覽:739
win1010194190 瀏覽:722
windows文件夾命名 瀏覽:905
博易大師升級文件在哪裡 瀏覽:415

友情鏈接