在Javascript中调用相同级别属性中的函数

时间:2015-04-23 00:05:08

标签: javascript

我有一个像这样的对象。我想从encodeToken属性中的回调内部调用refreshToken。任何人都可以帮助我javascript如何工作吗?感谢。

var obj = {
    encodeToken: function (obj){
        var opt = {expiresInMinutes: 1}
        return jwt.sign(obj, config.jwt_key, opt);
    },

    decodeToken: function (token, callback){
        jwt.verify(token, config.jwt_key, function (err, decoded){
            callback(err, decoded);
        });
    },

    refreshToken: function (token, callback) {

        this.decodeToken(token, function (err, decoded){
            callback(err, howToCall.encodeToken());
        });
    },

};

2 个答案:

答案 0 :(得分:3)

refreshToken: function (token, callback) {
    obj.decodeToken(token, function (err, decoded) {
        callback(err, obj.encodeToken());
    });
},

你可以毫无问题地引用你的对象。

答案 1 :(得分:2)

refreshToken: function (token, callback) {
    var self = this;
    this.decodeToken(token, function (err, decoded){
        callback(err, self.encodeToken());
    });
}

您可以阅读一个很好的解释here - 请参阅Simple callAs an object method章节 - 或here