Вот обещание , которое прошло promises-aplus-tests . Если запустить код ниже, в консоли ничего не будет отображаться.Но если я переключусь на использование узла Promis узла.js, он покажет 'цикл обнаружения цепочки, обнаруженный для обещания' .Они оба в порядке?Или просто в обещаниях-апл-тестах отсутствует этот контрольный пример?
Как Обещания / Стандарт A + говорит
2.3.1 Если обещание и x относятся к одному и тому жеобъект, отклоните обещание, указав в качестве причины ошибку TypeError.
var myPromise = new MyPromise (function (resolve) {
setTimeout(function () {
resolve(myPromise);
}, 0);
});
myPromise.then(function (value) {
console.log('then',value);
}, function (err) {
console.log('catch',err.message);
});
Bluebird зарегистрируйте так же, как node.js; Q регистрация анонимной функции
function (resolve) {
setTimeout(function () {
resolve(myPromise);
}, 0);
}