jS: Uncaught SyntaxError: Unexpected token ILLEGAL

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 U+200B e conosciuto anche come entità HTML ​​. 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.

Walter Tosolini
Walter Tosolini
www.tosolini.info

I'm system engineer, IT consultant and slightly programmer since 1999. I like Hiking, Mountain bike, Photograph and videogames.

Articoli correlati
Lascia un commento

Il tuo indirizzo E-mail non verrà divulgato.I campi con * sono obbligatori

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.