Sök…
Syntax
-
// Single line comment (continues until line break)
-
/* Multi line comment */
-
<!-- Single line comment starting with the opening HTML comment segment "<!--" (continues until line break)
-
--> Single line comment starting with the closing HTML comment segment "-->" (continues until line break)
Använda kommentarer
För att lägga till anteckningar, tips eller utesluta att någon kod körs, erbjuder JavaScript två sätt att kommentera kodrader
Enkel rad Kommentar //
Allt efter //
fram till slutet av raden är uteslutet från körning.
function elementAt( event ) {
// Gets the element from Event coordinates
return document.elementFromPoint(event.clientX, event.clientY);
}
// TODO: write more cool stuff!
Kommentar med flera linjer /**/
Allt mellan öppningen /*
och stängningen */
exkluderas från körning, även om öppningen och stängningen är på olika linjer.
/*
Gets the element from Event coordinates.
Use like:
var clickedEl = someEl.addEventListener("click", elementAt, false);
*/
function elementAt( event ) {
return document.elementFromPoint(event.clientX, event.clientY);
}
/* TODO: write more useful comments! */
Använda HTML-kommentarer i JavaScript (dålig praxis)
HTML-kommentarer (valfritt föregås av whitespace) kommer att göra att koden (på samma rad) ignoreras av webbläsaren, även om detta anses vara dålig praxis .
Kommentarer på en rad med HTML-kommentarsöppningssekvensen ( <!--
):
Obs! JavaScript-tolkaren ignorerar de slutande tecken för HTML-kommentarer (
-->
) här.
<!-- A single-line comment.
<!-- --> Identical to using `//` since
<!-- --> the closing `-->` is ignored.
Den här tekniken kan observeras i en äldre kod för att dölja JavaScript från webbläsare som inte stöder det:
<script type="text/javascript" language="JavaScript">
<!--
/* Arbitrary JavaScript code.
Old browsers would treat
it as HTML code. */
// -->
</script>
En HTML-stängningskommentar kan också användas i JavaScript (oberoende av en inledande kommentar) i början av en rad (eventuellt föregiven av whitespace) i vilket fall det också gör att resten av raden ignoreras:
--> Unreachable JS code
Dessa fakta har också utnyttjats för att en sida ska kunna kalla sig först som HTML och för det andra som JavaScript. Till exempel:
<!--
self.postMessage('reached JS "file"');
/*
-->
<!DOCTYPE html>
<script>
var w1 = new Worker('#1');
w1.onmessage = function (e) {
console.log(e.data); // 'reached JS "file"
};
</script>
<!--
*/
-->
När du kör en HTML ignoreras all multiline text mellan kommentarerna <!--
och -->
, så att JavaScript som finns i den ignoreras när den körs som HTML.
Som JavaScript, emellertid, medan linjerna som börjar med <!--
och -->
ignoreras är deras effekt inte att fly över flera rader, så linjerna som följer dem (t.ex. self.postMessage(...
) kommer inte att vara ignoreras när de körs som JavaScript, åtminstone tills de når en JavaScript- kommentar, markerad med /*
och */
. Sådana JavaScript-kommentarer används i exemplet ovan för att ignorera den återstående HTML- texten (tills -->
som också ignoreras som JavaScript ).