JSFiddle - React, Tailwind, and code Playground

HTML

<button id="btn1">開始!</button>

JavaScript

const wait = (sec) => {
  return new Promise((resolve, reject) => {
    setTimeout(resolve, sec*1000);
    //setTimeout(() => {reject(new Error("エラー!"))}, sec*1000);
  });
};

const sec = 3;
document.querySelector('#btn1').addEventListener(
  "click",
  async () => {
    try {
      await wait(sec);
    	// ここに目的の処理を書きます。
      alert(sec + '秒たちました!');
    } catch (err) {
      console.error(err);
    }
  }
);