Stary idiom uzyskania bardzo starych przeglądarek zignorować bloki JavaScript na stronach HTML jest owinąć zawartość elementu <script>
w komentarzach HTML:HTML Komentarz do otwierania jest prawidłowy JavaScript?
<script>
<!--
alert("Your browser supports JavaScript");
//-->
</script>
Uzasadnieniem jest to, że stare przeglądarki JavaScriptless odda jako tekst treść elementu <script>
, więc umieszczenie kodu JavaScript w komentarzu HTML powoduje, że przeglądarka nie ma nic do renderowania. Z drugiej strony nowoczesna przeglądarka zobaczy element <script>
i przeanalizuje jego zawartość jako JavaScript. W związku z tym komentarze muszą być poprawne JavaScript. Końcowy komentarz HTML (-->
) jest ignorowany przez analizator składni JavaScript, ponieważ jest poprzedzony komentarzem wiersza JavaScript (//
).
Moje pytanie brzmi: w jaki sposób otwierający komentarz HTML (<!--
) nie powoduje, że parser JavaScript zawiedzie? Słyszałem od różnych osób, że początkowy komentarz HTML to poprawny JavaScript. Jeśli to prawda, że komentarz otwierający jest oceniany jako JavaScript, co robi po uruchomieniu?
Jest ważny, po prostu włóż go do konsoli. Ale chciałbym wiedzieć, dlaczego. – kapa
po wykonaniu zwraca niezdefiniowany i działa jak zwykły komentarz '//'. wygląda jak zakodowany magiczny ciąg? ciekawy znać także odpowiedź. – c69
Przyjemne miejsce :) Zaczniemy od teraz, tak jak teraz, odczytywać liniowe komentarze tylko po to, aby grać z umysłem osób: D – clentfort