2

在我看来,一次性promisify和调用方法函数有三种方法:

const { promisify } = require('util');

const obj = {
    method: function (param, callback) {
        // Do something async with `this`
        callback(err, result);
    }
};

promisify(obj.method.bind(obj))(arg).then(doSomething); // {1}
promisify(obj.method).bind(obj)(arg).then(doSomething); // {2}
promisify(obj.method).call(obj, arg).then(doSomething); // {3}

这些方法中是否有任何一种优于其他方法,或者它们都同样有效?各自的优点和缺点是什么?

4

0 回答 0