Sintassi e Parsing
SyntaxError: await is only valid in async functions and top-level bodies of modules. – JavaScript SYNTAX_AWAIT_OUTSIDE_ASYNC
L'istruzione `await` è stata posizionata all'interno di un file JavaScript classico caricato tramite tag `<script>` privo dell'attributo `type="module"` o in uno script CommonJS non incapsulato in una funzione asincrona.
Cosa significa questo errore?
L'istruzione `await` è stata posizionata all'interno di un file JavaScript classico caricato tramite tag `<script>` privo dell'attributo `type="module"` o in uno script CommonJS non incapsulato in una funzione asincrona.
Messaggio originale
SyntaxError: await is only valid in async functions and top-level bodies of modules.Contesto e parole chiave
Alias
- await is only valid in async functions
- await outside async function SyntaxError
Messaggi alternativi
- await valido solo all'interno di funzioni async o moduli ES
Prodotti
- Motore JavaScript ECMAScript (V8, SpiderMonkey, JavaScriptCore) / DOM Web APIs
Piattaforme
- Browser Web
- Bun
- Deno
- Multipiattaforma
- Node.js
Parole chiave
- ecmascript
- errore-javascript-await-in-classic-script-syntaxerror
- javascript
- javascript.sintassi.await-in-top-level-script-classic
- js
- Sintassi e Parsing
- SYNTAX_AWAIT_OUTSIDE_ASYNC
Cause possibili
Origine del problema per JavaScript: SyntaxError — await is only valid in async functions
L'istruzione `await` è stata posizionata all'interno di un file JavaScript classico caricato tramite tag `<script>` privo dell'attributo `type="module"` o in uno script CommonJS non incapsulato in una funzione asincrona.
molto comuneDiagnosi
Ispezione diagnostica JavaScript per JavaScript: SyntaxError — await is only valid in async functions
Aprire la Console dei Developer Tools del browser (F12) o consultare lo stack trace a terminale.
Come leggere il risultato. Evidenzia la linea esatta di codice sorgente, l'oggetto target e il tipo di eccezione ECMAScript scatenata.
Risoluzione
Procedura di risoluzione per JavaScript: SyntaxError — await is only valid in async functions
Applicare la correzione al codice secondo gli standard ECMAScript e le specifiche W3C/WHATWG.
- Verificare la compatibilità del tipo di dato o la presenza dell'elemento DOM
- Aggiungere i controlli di validazione o gestione degli errori con try/catch
- Ricaricare l'applicazione o rieseguire il test unitario
Domande frequenti
Come risolvere l'errore SYNTAX_AWAIT_OUTSIDE_ASYNC in JavaScript?
L'istruzione `await` è stata posizionata all'interno di un file JavaScript classico caricato tramite tag `<script>` privo dell'attributo `type="module"` o in uno script CommonJS non incapsulato in una funzione asincrona.
Approfondimenti
- MDN Web Docs - JavaScript Standard Error Reference documentazione_ufficiale