syncTest funciona, await asyncTest no lo hace, pero no hay ningún mensaje de error, así que no veo cómo solucionarlo.
function syncTest(a) { return a; } async function asyncTest(a) { return a; } async function test() { let value1 = new Function( `return syncTest("123");` )(); console.log(value1); try { let value2 = new Function( `return await asyncTest("123");` )(); console.log(value2); } catch(e) { console.log(error.message); } } test();2 posibles problemas:
Lo más probable es que usar await signifique que la función devolverá una Promesa, no texto sin formato. Infórmate aquí, no te arrepentirás .
En segundo lugar, el comando de "nueva función" que está utilizando es bastante extraño y lo más probable es que no sea asincrónico en este caso. La palabra clave await solo funciona en funciones asíncronas, por ejemplo (async()=>{}) es una función asíncrona.
Por favor, tome todo esto con pinzas, ya que no puedo probar esto en este momento. ¡Solo algunas palabras de sabiduría! ✨