成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

被討論難了的this關(guān)鍵字

Sanchi / 471人閱讀

摘要:關(guān)鍵字是個(gè)常用的關(guān)鍵字它被自動(dòng)生成在函數(shù)作用域里并代表函數(shù)執(zhí)行環(huán)境的上下文如果在開發(fā)中不了解綁定在那個(gè)對(duì)象上會(huì)很容易出現(xiàn)綁定的規(guī)則默認(rèn)綁定當(dāng)函數(shù)獨(dú)立使用沒有對(duì)象屬性的引用進(jìn)行調(diào)用會(huì)默認(rèn)綁定在全局對(duì)象或使用嚴(yán)格模式隱形綁定當(dāng)函數(shù)被某個(gè)對(duì)象的屬

this關(guān)鍵字

this是個(gè)常用的關(guān)鍵字,它被自動(dòng)生成在函數(shù)作用域里.并代表函數(shù)執(zhí)行環(huán)境的上下文.
如果在開發(fā)中,不了解this綁定在那個(gè)對(duì)象上,會(huì)很容易出現(xiàn)bug.

this綁定的規(guī)則 默認(rèn)綁定

當(dāng)函數(shù)獨(dú)立使用,(沒有對(duì)象屬性的引用進(jìn)行調(diào)用).
this會(huì)默認(rèn)綁定在全局對(duì)象undefined.

var log = function () {
    console.log(this)
}
log() //window

使用嚴(yán)格模式
"use strict";
var log = function () {
    console.log(this)
}
log() //undefined
隱形綁定

當(dāng)函數(shù)被某個(gè)對(duì)象的屬性引用后調(diào)用.
this會(huì)綁定在該對(duì)象上.

var obj = {
    log: function () {
        console.log(this);
    }
}
obj.log() //obj
顯性綁定

當(dāng)函數(shù)調(diào)用時(shí),指定函數(shù)的this綁定對(duì)象.
涉及的方法有call、applybind.

var log = function () {
    console.log(this)
}
var target = {}

var bindLog = log.bind(target)
bindLog() //target
log.call(target) //target
log.apply(target) //target
顯性綁定的優(yōu)先級(jí)比隱形綁定高
function log() {
    console.log(this.name)
}

var visibleObj = {
    name: "visible"
}

var hideObj = {
    name: "hide",
    log: log
}

hideObj.log.call(visibleObj) //visible
new綁定

當(dāng)實(shí)例一個(gè)構(gòu)造函數(shù)時(shí).
構(gòu)造函數(shù)的this會(huì)綁定在實(shí)例上.

function construct(tag) {
    this.tag = tag;
}

var instance = new construct("instance")
console.log(instance.tag) //instance

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/95860.html

相關(guān)文章

  • 為什么我們的web前端變的越來越復(fù)雜

    摘要:我們不能迷失在各種新技術(shù)里,主要我們就會(huì)把簡(jiǎn)單的問題度復(fù)雜化了,會(huì)把我們的前端變的很復(fù)雜。我們的代碼變得怪異難懂我不知道從什么時(shí)候,前端的代碼寫的越難懂就越能顯示水平。 前端發(fā)展了也有些年頭了,曾記得很多年前,聊起前端,都覺得是很簡(jiǎn)單,那個(gè)時(shí)候都沒有前端工程師這個(gè)職位??涩F(xiàn)在,前端已經(jīng)逆襲了,已經(jīng)不是原來的樣子了,各種技術(shù)層出不窮,顯的越來越高深莫測(cè)了。前端真的變得那么難了嗎?在我看來...

    LMou 評(píng)論0 收藏0
  • 為什么我們的web前端變的越來越復(fù)雜

    摘要:我們不能迷失在各種新技術(shù)里,主要我們就會(huì)把簡(jiǎn)單的問題度復(fù)雜化了,會(huì)把我們的前端變的很復(fù)雜。我們的代碼變得怪異難懂我不知道從什么時(shí)候,前端的代碼寫的越難懂就越能顯示水平。 前端發(fā)展了也有些年頭了,曾記得很多年前,聊起前端,都覺得是很簡(jiǎn)單,那個(gè)時(shí)候都沒有前端工程師這個(gè)職位??涩F(xiàn)在,前端已經(jīng)逆襲了,已經(jīng)不是原來的樣子了,各種技術(shù)層出不窮,顯的越來越高深莫測(cè)了。前端真的變得那么難了嗎?在我看來...

    Y3G 評(píng)論0 收藏0
  • 為什么我們的Web前端變的越來越復(fù)雜

    摘要:我們不能迷失在各種新技術(shù)里,主要我們就會(huì)把簡(jiǎn)單的問題度復(fù)雜化了,會(huì)把我們的前端變的很復(fù)雜。我們的代碼變得怪異難懂我不知道從什么時(shí)候,前端的代碼寫的越難懂就越能顯示水平。 前端發(fā)展了也有些年頭了,曾記得很多年前,聊起前端,都覺得是很簡(jiǎn)單,那個(gè)時(shí)候都沒有前端工程師這個(gè)職位??涩F(xiàn)在,前端已經(jīng)逆襲了,已經(jīng)不是原來的樣子 了,各種技術(shù)層出不窮,顯的越來越高深莫測(cè)了。前端真的變得那么難了嗎?在我看...

    davidac 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<