Description du problème :
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
console.log("</script>");
</script>
</body>
</html>
Impossible de sortir, erreur : Uncaught SyntaxError: Invalid or unexpected token
.
Est-ce un BUG du navigateur ?
Sur la base de l'analyse avec le navigateur, vous pouvez probablement comprendre, car ce que vous souhaitez consoler est la balise de fin d'un script. Lorsque le navigateur analyse la balise html, il l'utilise directement comme balise de fin. verra la page Seul
");
est affiché ci-dessus, le reste était à l'origine la véritable balise de fermeture et a été traité comme redondant.Il existe des situations similaires
Du point de vue de l'analyse des balises, le navigateur : "Je n'en assumerai pas la responsabilité."
Si vous souhaitez l'afficher normalement, vous pouvez ajouter l'échappement
L'analyseur HTML dans le noyau du navigateur est une méthode de traitement de « machine à états »
;Principe d'analyse HTML
Google peut produire des résultats