[フレーム]
Last Updated: July 15, 2016
·
2.047K
· levity

Loop with promises

const testPromise = function (value) {
 return new Promise(function (res, rej) {
 console.log('testPromise: ' + value)
 value >= 3 ? res() : rej()
 })
}

var value = 1

const poll = function () {
 testPromise(value)
 .then(() => {
 console.log('yay')
 })
 .catch(() => {
 setTimeout(() => {
 value += 1
 poll()
 }, value * 1000)
 })
}

poll()

See it in action here: https://jsbin.com/wirumixojo/edit?html,js,console

AltStyle によって変換されたページ (->オリジナル) /