欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

深入理解js中this的用法

 更新時間:2016年05月28日 15:11:57   投稿:jingxian  
下面小編就為大家?guī)硪黄钊肜斫鈐s中this的用法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

this是js的一個關(guān)鍵字,隨著函數(shù)使用場合不同,this的值會發(fā)生變化。但是總有一個原則,那就是this指的是調(diào)用函數(shù)的那個對象。

1、純粹函數(shù)調(diào)用。

function test() {  
  this.x = 1;  
  alert(x);
}

test();

其實這里的this就是全局變量??聪旅娴睦泳湍芎芎玫睦斫馄鋵峵his就是全局對象Global。其實這里的this就是全局變量??聪旅娴睦泳湍芎芎玫睦斫馄鋵峵his就是全局對象Global。

var x = 1;
function test() {
  alert(this.x);
}
test();//1

var x = 1;
function test() {
  this.x = 0;
}
test();
alert(x);//0 

2、作為方法調(diào)用,那么this就是指這個上級對象。

function test() {
  alert(this.x);
}

var o = {};
o.x = 1;
o.m = test;
o.m(); //1

3、作為構(gòu)造函數(shù)調(diào)用。所謂構(gòu)造函數(shù),就是生成一個新的對象。這時,這個this就是指這個對象。

function test() {  
   this.x = 1;
}
var o = new test();
alert(o.x);//1

4、apply調(diào)用

var x = 0;
function test() {
  alert(this.x);
}

var o = {};
o.x = 1;
o.m = test;
o.m.apply(); //0
o.m.apply(o);//1

當apply沒有參數(shù)時,表示為全局對象。所以值為0。

以上這篇深入理解js中this的用法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論