Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

148
Vistas
Diferencia entre llamar a eval con y sin promesa

Tengo una pregunta. Vi en la operación de especificación HostMakeJobCallback , describe dos casos con script activo no nulo y nulo. También hay dos ejemplos con código:

  • script activo no es nulo
     Promise.resolve('import(`./example.mjs`)').then(eval);
  • el script activo es nulo
     <button onclick="Promise.resolve('import(`./example.mjs`)').then(eval)">Click me</button>

Estoy interesado en el primer ejemplo. Imagina la siguiente estructura:

  • índice.html
  • módulos/
    • a.js
    • ejemplo.js

índice.html

 <script type="module" src="modules/a.js"></script>

ejemplo.js

 console.log("example.js is included")

a.js (no se ejecuta con todos los casos juntos)

 /// case 1 eval('import(`./example.js`)'); /// case 2 Promise.resolve("import('./example.js')").then(eval)

En el caso 1 : eval no arrojará un error e imprimirá "example.js is included" . Eso creo que será correcto porque la import obtiene GetActiveScriptOrModule() que será Module Record

En el caso 2 : then(eval) arrojará el error. Y por alguna razón este código pensará que baseURL es "http://127.0.0.1:5501/" pero no "http://127.0.0.1:5501/modules"

¿Por qué estos casos son diferentes? ¿ HostMakeJobCallback no guarda el script activo para la futura restauración con su baseURL del script del módulo?

eval('import("./example.js")'); ingrese la descripción de la imagen aquí

Promise.resolve("import('./example.js')").then(eval) ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda