真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

JS中this指向函數(shù)的調(diào)用方法有哪些

JS中this指向函數(shù)的調(diào)用方法有哪些?這個(gè)問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個(gè)問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!

前郭ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

初學(xué)javascript總會(huì)對(duì)this指向感到疑惑,想要深入學(xué)習(xí)javascript,必須先理清楚和this相關(guān)的幾個(gè)概念。javascript中this總是指向一個(gè)對(duì)象,但具體指向誰是在運(yùn)行時(shí)根據(jù)函數(shù)執(zhí)行環(huán)境動(dòng)態(tài)綁定的,而并非函數(shù)被聲明時(shí)的環(huán)境。除去不常用的with和eval的情況,具體到實(shí)際應(yīng)用中,this指向大致可以分為以下4種。

作為對(duì)象的方法調(diào)用

當(dāng)函數(shù)作為對(duì)象的方法被調(diào)用時(shí),this指向該對(duì)象:

var person = {
  name: 'twy',
  getName: function() {
    console.info(this === person);  // 輸出true
    console.info(this.name);     // 輸出twy
  }
}
person.getName();

作為普通函數(shù)調(diào)用

當(dāng)函數(shù)作為普通的函數(shù)被調(diào)用時(shí),非嚴(yán)格模式下this指向全局對(duì)象:

function getName(){
  // 非嚴(yán)格模式
  console.info(this === window); // 瀏覽器環(huán)境下輸出true
}
getName();

嚴(yán)格模式下this為undefined:

function getName(){
  // 嚴(yán)格模式
  "use strict"
  console.info(this === window); // 輸出false
}
getName();

構(gòu)造器調(diào)用

當(dāng)new一個(gè)對(duì)象時(shí),構(gòu)造器里的this指向new出來的這個(gè)對(duì)象:

function person(){
  // 構(gòu)造函數(shù)
  this.color = 'white';
}
var boy = new person();
console.info(boy.color);  // 輸出white

call或apply調(diào)用

Function.prototype.applyFunction.prototype.call 可以動(dòng)態(tài)改變傳入函數(shù)的this指向:

// 聲明一個(gè)父親對(duì)象,getName方法返回父親的名字
var father = {
  name: 'twy',
  getName: function(){
    return this.name;
  }
}
// 生命一個(gè)兒子對(duì)象,但是沒有返回名字的功能
var child = {
  name: 'chy'
}
console.info(father.getName()); // 輸出twy

// 使用call或apply將father.getName函數(shù)里this指向child
console.info(father.getName.call(child)); // 輸出chy
console.info(father.getName.apply(child)); // 輸出chy

感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)JS中this指向函數(shù)的調(diào)用方法有哪些大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)站標(biāo)題:JS中this指向函數(shù)的調(diào)用方法有哪些
標(biāo)題網(wǎng)址:http://weahome.cn/article/jcohss.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部