Promise 异步
引擎是 Rhino 1.8:用 Promise + .then,不要写 async / await。箭头函数可用。
基本用法
javascript
let promise = new Promise(function (resolve, reject) {
System.sleep(1000);
console.log(234);
resolve('成功');
});
promise.then(resolve => {
console.log(resolve); // 成功
}, reject => {
console.log(reject);
});Promise + 定时器
页面或需要不堵线程时,用 setTimeout 代替 System.sleep:
javascript
let promise = new Promise(function (resolve, reject) {
setTimeout(function () {
console.log(234);
resolve('成功');
}, 1000);
});
promise.then(resolve => {
console.log(resolve); // 成功
}, reject => {
console.log(reject);
});