我想通过promise异步的给obj新增一个abc的方法,当我调用test1.abc()的时候浏览器意外的报错了abc这个方法还不存在,想了一下报错是合情合理的。promise是异步执行,而最初的var obj = {}是同步执行,obj没有abc这个属性。哪怕是实例化的时候先调用obj.init()依然没用。我应该如何正确的调用test1.abc()。
var ppk = new Client(/Service/);
function test() {
var obj = {};
obj.init = function() {
return new Promise(function(resolve,reject) {
resolve(5)
}).then(function(value) {
obj.abc = function() {
alert(123)
}
})
}
obj.init();
return obj;
}
var test1 = new test();
test1.abc()
慕侠2389804
相关分类