0

我写了这段代码

const link = "CKV0nSlxV8M"


const rendertest = async (link) => {
    const format = await ytdl(link, { quality: '22'})
    let test = JSON.stringify(format[0].url) 
        alert(test)  //string type
    return test
  
}

let finalValue = rendertest(link)
    
    
console.log(finalValue)

我从test(字符串)中得到了这个值

在此处输入图像描述

但考试值不是String(对象)

在此处输入图像描述

我不知道我写错了哪一部分。我想要相同的test输出finalValue

4

1 回答 1

0

当您将函数定义为async时,它会在幕后返回一个承诺。因此,您必须等待承诺兑现。尝试这个:

const link = "CKV0nSlxV8M"


const rendertest = async (link) => {
    const format = await ytdl(link, { quality: '22'});
    const test = JSON.stringify(format[0].url);

    return test
}

rendertest(link).then(finalValue => {
  console.log(finalValue)
}
于 2021-07-01T07:56:01.923 回答