首页 > 代码库 > [Javascript] Promise-based functions should not throw exceptions

[Javascript] Promise-based functions should not throw exceptions

Source

 

You can also start a chain of then() method calls via Promise.resolve() and execute the synchronous code inside a callback:

    function asyncFunc() {        return Promise.resolve()        .then(() => {            doSomethingSync();            return doSomethingAsync();        })        .then(result => {            ···        });    }

 

 

An alternative is to start the Promise chain via the Promise constructor:

    function asyncFunc() {        return new Promise((resolve, reject) => {            doSomethingSync();            resolve(doSomethingAsync());        })        .then(result => {            ···        });    }

 

This approach saves you a tick (the synchronous code is executed right away), but it makes your code less regular.

[Javascript] Promise-based functions should not throw exceptions