Maison  >  Questions et réponses  >  le corps du texte

javascript - Question sur la sortie </script> dans la balise <script>

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 ?

ringa_leeringa_lee2684 Il y a quelques jours897

répondre à tous(3)je répondrai

  • PHP中文网

    PHP中文网2017-06-14 10:54:30

    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

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Document</title>
    </head>
    <body>
      <script>
          //</script>
      </script>
    </body>
    </html>

    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

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Document</title>
    </head>
    <body>
      <script>
        console.log("<\/script>");
      </script>
    </body>
    </html>

    répondre
    0
  • 漂亮男人

    漂亮男人2017-06-14 10:54:30

    L'analyseur HTML dans le noyau du navigateur est une méthode de traitement de « machine à états »
    Principe d'analyse HTML

    ;

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-06-14 10:54:30

    Google peut produire des résultats

    répondre
    0
  • Annulerrépondre