js 函数如何做到延迟一秒返回参数。

a(){
return true;
}

这个ture我希望一秒钟后再返回出去,尝试过异步回调

myFun(a){
    setTimeout( () => {
            a
    },1000)
}

但是这样我就拿不到a函数的返回值
就算能拿到也不能通过myFun返回出去。
不知道然后和做到延迟一秒返回值

优雅的异步:

function a(){
    return true;
}
async function myFun(ms) {
    let r = await new Promise((res)=>{
            setTimeout(()=>{res()},ms);
        });
    return a();
}
flag = false;
myFun(2000).then(result => {
    //在这里处理执行a()后的业务
    flag = result;
    console.log("已过2s,我会工作,输出:"+flag);
});
console.log("虽然我在后,但是我先输出:"+flag);

简单粗暴死循环:

function a(ms){
    let s = new Date().getTime();
    while(new Date().getTime()-s<ms){}
    return true;
}
console.log(a(5000));
console.log("我必须要等你执行完毕,才能输出...");

试一下,否能定义一个全局变量,将a函数执行完毕后,把返回值赋值给全局变量,然后再需要这个返回值的地方,
用while循环,不断检测,值是否符合,符合就继续执行

设置定时器一秒后执行