鍍金池/ 問(wèn)答/HTML/ es6種json內(nèi)部定義函數(shù),其他的內(nèi)部成員怎么調(diào)用?

es6種json內(nèi)部定義函數(shù),其他的內(nèi)部成員怎么調(diào)用?

這里不知道為什么無(wú)法運(yùn)行

const Helper = {
    /**
     * 判斷是不是一個(gè)DOM對(duì)象
     *
     * @param {*} obj 要判斷的對(duì)象
     * @return {boolean} 是否是DOM對(duì)象
     */
    isDom(obj) {
        console.log(obj)
    },

    ad:function(obj) {
        return obj*2
    },

    add3(a,b){
        b = this.ad(b)
        return a+b;
    }(1,2),
    

}




Helper.isDom('我的加');
console.log(Helper.add3);
const Helper = {
    each:function(e){
    
    },
    var domFactories = ['div', 'a', 'span'],
    var DOM = {},
    each(domFactories){
        for(var element in domFactories){
            DOM[element] =  domFactories[element]
        }
        
    }
    
}

我的意思在const內(nèi)部定義一個(gè)each函數(shù),一個(gè)空對(duì)象DOM,還有一個(gè)domFactories

然后我運(yùn)行each函數(shù)給這個(gè)控對(duì)象賦值

最后在Helper調(diào)用帶有值的DOM
回答
編輯回答
故人嘆

add3寫(xiě)法有問(wèn)題,如果你要想返回一個(gè)其他的函數(shù)或者計(jì)算后的值,請(qǐng)這樣

  add3: ((a,b) => {
        b = this.ad(b)
        return a+b;
    })(1,2)
2017年7月23日 16:25
編輯回答
故林

在對(duì)象內(nèi)調(diào)用內(nèi)部函數(shù),用this調(diào)用即可。
你這里add3定義錯(cuò)誤。改成這樣就行了,另外在對(duì)象最后一個(gè)屬性,最好不要在后面添加,有些情況(<= IE7)會(huì)報(bào)錯(cuò)。

add3: function(a,b){
        // this調(diào)用內(nèi)部函數(shù)
        b = this.ad(b)
        return a+b;
    }
2018年1月11日 09:47
編輯回答
櫻花霓

首先糾正你一下,在JavaScript中不要讀JSON,讀對(duì)象。
如果你的問(wèn)題是在函數(shù)add3()中調(diào)用ad()的話,那么你的add3()(1,2)這種語(yǔ)法是錯(cuò)誤的。應(yīng)該改寫(xiě)成這樣:

add3(a,b){
    b = this.ad(b)
    return a+b;
},

如果要在對(duì)象中互相訪問(wèn)的話,使用this對(duì)象中的this指向的就是當(dāng)前的對(duì)象。

2018年4月23日 12:33