在初學(xué)Javascript時(shí),我們也許不需要擔(dān)心函數(shù)綁定的問(wèn)題,但是當(dāng)我們需要在另一個(gè)函數(shù)中保持上下文對(duì)象this時(shí),就會(huì)遇到相應(yīng)的問(wèn)題了,我見(jiàn)過(guò)很多人處理這種問(wèn)題都是先將this賦值給一個(gè)變量(比如self、_this、that等),尤其是var that = this是我見(jiàn)的最多的,這樣當(dāng)你改變環(huán)境之后就可以使用它。這些都是可以的,但是還有一種更好的、更專(zhuān)有的方法,那就是使用Function.prototype.bind,下面進(jìn)行詳盡的講解。

  

第一部分:需要解決的問(wèn)題

  首先看下面的代碼var myObj = {

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

    specialFunction: function () {

    },

    anotherSpecialFunction: function () {

    },

    getAsyncData: function (cb) {
        cb();
    },

    render: function () {
this.getAsyncData(function () {            this.specialFunction();            this.anotherSpecialFunction();        });    } }; myObj.render();

網(wǎng)友評(píng)論