Regenerate nvim config
This commit is contained in:
@ -0,0 +1,58 @@
|
||||
async function defuse(ms) {
|
||||
return new Promise((resolve, reject) => {
|
||||
setTimeout(() => {
|
||||
resolve(ms)
|
||||
}, ms)
|
||||
})
|
||||
}
|
||||
|
||||
async function bomb(ms) {
|
||||
return new Promise((resolve, reject) => {
|
||||
setTimeout(() => {
|
||||
reject(ms)
|
||||
}, ms)
|
||||
})
|
||||
}
|
||||
|
||||
async function race() {
|
||||
return Promise.race([
|
||||
defuse(500 + Math.ceil(Math.random() * 500)),
|
||||
bomb(800 + Math.ceil(Math.random() * 200)),
|
||||
])
|
||||
}
|
||||
|
||||
async function play() {
|
||||
console.info('Game start!')
|
||||
let cnt = 0
|
||||
try {
|
||||
while (true) {
|
||||
let ms = await race()
|
||||
cnt = cnt + ms
|
||||
console.info(`Defuse after ${ms}ms~`)
|
||||
}
|
||||
} catch (msErr) {
|
||||
cnt = cnt + msErr
|
||||
console.info(`Bomb after ${msErr}ms~`)
|
||||
}
|
||||
|
||||
console.info(`Game end after ${cnt}ms!`)
|
||||
|
||||
await {
|
||||
then: function(resolve, reject) {
|
||||
setTimeout(() => {
|
||||
reject(this.message)
|
||||
}, 1000)
|
||||
},
|
||||
message: 'try to throw an error :)'
|
||||
}
|
||||
}
|
||||
|
||||
Promise.resolve().then((value) => {
|
||||
console.info('In next tick')
|
||||
})
|
||||
|
||||
console.info('In main')
|
||||
|
||||
play().finally(() => {
|
||||
console.info('Before throwing UnhandledPromiseRejection on finally!')
|
||||
})
|
||||
Reference in New Issue
Block a user