国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

js中this的用法實例分析

2024-05-06 16:14:09
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了js中this的用法,實例分析了js中this的4種常見用法,具有一定參考借鑒價值,需要的朋友可以參考下
 

本文實例分析了js中this的用法。分享給大家供大家參考。具體分析如下:

實例1:第一種調用this的方法——以函數形式調用。它代表全局對象window

復制代碼代碼如下:
<script type="text/javascript">
function t(){
 alert(this);//這里this表示window對象。
}
t();
</script>

實例2:第二種調用this的方法——以對象屬性的形式調用。它代表該對象。實例中onclick為p元素對象的屬性
復制代碼代碼如下:
<html>
<head>
<script type="text/javascript">
function t(){
 alert(this);
 this.style.background = 'green';
}
window.onload = function(){
 document.getElementById('eng').onclick = t;
}
</script>
</head>
<body>
<p id="eng">abcd</p>
</body>
</html>

實例3:第三種調用this的方法——以構造器的方式調用。
復制代碼代碼如下:
<script type="text/javascript">
function dog(){
 this.legs = 4;
 this.bark = function(){
  alert("汪汪...");
 }
}
var wangcai = new dog();//創建對象的方式。new 函數名();
wangcai.bark();
</script>

說明:
(1)如果直接調用dog()函數,而不是以創建對象的方式調用,則相當于第一種調用了,即this代表著全局對象window。
(2)js中沒有類的概念,但是有對象的概念;
(3)對象的創建可以采用var = objName{name:'abc',age:40}這種方式創建,也可以通過構造函數來創建;
(4)什么是構造函數:當一個普通函數以“new 函數名()”的方式調用時,此函數就充當構造函數。

 

實例4:第四種調用this的方法——call和apply方式

復制代碼代碼如下:
<html>
<head>
<script type="text/javascript">
window.onload = function(){
 var d = document.getElementById('hi');
 if(hi.addEventListener){//chrome 和 firefox
  hi.addEventListener('click',function(){alert(this.id)},false);//w3c模型中,this指向DOM對象。this.id結果為hi
 }else{// ie
  hi.attachEvent('onclick',function(){alert(this.id)});//ie8及ie8以下,這里this指向全局對象window。結果this.id結果為undefined
 }
}
</script>
</head>
<body>
<p id="hi">hello world</p>
</body>
</html>

 

希望本文所述對大家的javascript程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 翼城县| 临夏县| 南陵县| 苏尼特左旗| 永川市| 萝北县| 临高县| 甘孜| 兴义市| 平和县| 红安县| 纳雍县| 潞城市| 紫云| 浦东新区| 凤城市| 外汇| 巧家县| 甘德县| 繁昌县| 镇平县| 新晃| 东阳市| 武汉市| 德保县| 弥渡县| 尼勒克县| 许昌市| 乾安县| 泽州县| 双流县| 金寨县| 瑞丽市| 准格尔旗| 台中县| 双峰县| 卓尼县| 安顺市| 长武县| 扎囊县| 上林县|