JSFiddle - React, Tailwind, and code Playground

by Csaba Hellinger

JavaScript

console.clear();


function    promiseTimeout(promise, timeout) {
        return new Promise((resolve, reject) => {
            const timer = setTimeout(() => {
            	reject('Promise timeout');
            }, timeout);
            promise
                .then(resolve)
                .catch(reject)
                .finally(() => clearTimeout(timer));
        });
    }
    
function test() {
	return new Promise((resolve, reject) => {
    	setTimeout(() => resolve(1), 1500);
    	//setTimeout(() => reject(2), 1000);
    });
}


const p = promiseTimeout(test(), 1000);

p.then(res => console.log(res)).catch(err => console.error(err));