Le problème, c'est que vous servez D3 avec l'option ISO-8859-1
(souvent le codage de caractères par défaut du navigateur), alors que D3 doit être servi avec UTF-8
l'encodage. En général, cela se produit parce qu'il manque une métabalise en haut de la page HTML de chargement :
<!DOCTYPE html>
<meta charset="utf-8">
Le jeu de caractères méta-spécifié est nécessaire parce que d3js.org est servi par les pages GitHub et ne spécifie pas de jeu de caractères dans le fichier de configuration de l'utilisateur. Content-Type
l'en-tête de réponse. Le jeu de caractères est donc déduit du document HTML en cours de chargement.
Si vous préférez, vous pouvez spécifier un attribut charset sur la balise script. Veillez à vider le cache de votre navigateur avant de procéder au test, car la copie en cache conservera le codage des caractères lors de l'accès initial :
<script src="http://d3js.org/d3.v3.js" charset="utf-8"></script>
L'erreur ne se produit pas avec la version miniaturisée car les noms de variables sont remplacés par des équivalents ASCII. (Je ne me souviens pas de mémoire si les caractères UTF-8 dans les chaînes de format sont également remplacés par des séquences d'échappement, mais je recommande toujours de servir D3 en UTF-8 dans tous les cas).
Des problèmes d'encodage peuvent également survenir si vous avez téléchargé D3 en visualisant la source dans votre navigateur puis en utilisant le copier-coller, c'est pourquoi je recommande de télécharger d3.v3.zip.
DE : Erreur de syntaxe involontaire : Unxpected token =
0 votes
Le problème pour moi était que simplehttpserver ne supporte pas utf8 par défaut : stackoverflow.com/questions/15288891/