Site icon Tosolini.info

jS: Uncaught SyntaxError: Unexpected token ILLEGAL

Avete fatto tutto giusto e dal punto della vista della sintassi non c’è nessun errore, ma il debugger del browser (a volte solo alcuni) vi riporta un “Uncaught SyntaxError: Unexpected token ILLEGAL” segnando l’errore magari ad inizio riga. Si tratta di carattere nascosto che javaScript riporta come Token illegale. Dal punto di vista visivo nel 99% dei casi non si vede nulla, ma di fatto è un spazio o un “a capo” che viene interpretato e non riconosciuto. Spesso succede quando si codifica con Windows per interpretarlo su un ambiente Unix like.

Per fare un test veloce basterà incollare il codice ad esempio su jsFiddle. Se vedete un punto rosso significa che è presente un carattere nascosto, ad esempio il carattere “bianco” Unicode Zero Width Space codificato come [textmarker color=”gray”]U+200B[/textmarker] e conosciuto anche come entità HTML [textmarker color=”gray”]​​[/textmarker]. Sotto Linux, o attraverso una shell come CygWin sotto Windows, sarà possibile vedere fisicamente questi bad-character, viceversa sotto Windows è quasi sicuro che non vedrete nulla.

La soluzione è quella di intervenire nelle impostazioni dell’editor sul tipo di compilazione che dovrà essere Unix/linux compatibile, in genere un editor che sia degno di questo nome ha questa opzione.

Exit mobile version