ì측 구문 ë¶ì (Speculative parsing)
ì íµì ì¼ë¡ ë¸ë¼ì°ì ìì HTML íìë ë©ì¸ ì¤ë ëìì ì¤íëìì¼ë©° ì¤í¬ë¦½í¸ê° ë¤í¸ìí¬ìì ê²ìëì´ ì¤íë ëê¹ì§ </script> íê·¸ ë¤ìì ì°¨ë¨ëììµëë¤. Firefox 4 ì´íì Firefoxì ê°ì ì¼ë¶ HTML íìë ë©ì¸ ì¤ë ëìì ì측 구문 ë¶ìì ì§ìí©ëë¤. ì¤í¬ë¦½í¸ê° ë¤ì´ë¡ëëê³ ì¤íëë ëì 미리 구문 ë¶ìì í©ëë¤. HTML íìë ì¤í¸ë¦¼ìì 미리 ì°¾ì ì¤í¬ë¦½í¸, ì¤íì¼ ìí¸ ë° ì´ë¯¸ì§ì ëí ì측 ë¡ë를 ììíê³ ì측ì ë°ë¼ HTML í¸ë¦¬ êµ¬ì± ìê³ ë¦¬ì¦ì ì¤íí©ëë¤. ì¥ì ì ìì¸¡ì´ ì±ê³µí ë ì´ë¯¸ ì¤í¬ë¦½í¸, ì¤íì¼ ìí¸ ë° ì´ë¯¸ì§ë¥¼ ê²ìí ìì íì¼ì ì¼ë¶ë¥¼ ë¤ì ë¶ìí íìê° ìë¤ë ê²ì
ëë¤. ë¨ì ì ìì¸¡ì´ ì¤í¨í ë ìì¤ëë ìì
ì´ ë ë§ë¤ë ê²ì
ëë¤.
ì´ ë¬¸ìë ì측ì ì¤í¨íê² ë§ë¤ê³ íì´ì§ ë¡ë© ìë를 ë¦ì¶ë ê²ì ë°©ì§íë ë° ëìì´ ë©ëë¤.
ì°ê²°ë ì¤í¬ë¦½í¸, ì¤íì¼ ìí¸ ë° ì´ë¯¸ì§ì ì측 ë¡ë를 ì±ê³µì ì¼ë¡ ìííë ¤ë©´ document.write를 í¼íì¸ì. <base> ìì를 ì¬ì©íì¬ íì´ì§ì 기본 URI를 ì¬ì ìíë ê²½ì° ë¬¸ìì ì¤í¬ë¦½í¸ëì§ ìì ë¶ë¶ì ìì를 ë°°ì¹íì¸ì. <base> ìì를 document.write() ëë document.createElement를 íµí´ ì¶ê°íì§ ë§ì¸ì.
í¸ë¦¬ ë¹ë ì¶ë ¥ì ìì¤ ë°©ì§
document.write()ì ìí´ ì½ì
ë 모ë ì½í
ì¸ ê° êµ¬ë¬¸ ë¶ìëìì ë </script> íê·¸ ë¤ì ì측 ìíê° ë ì´ì ì ì§ëì§ ìëë¡ document.write()ê° í¸ë¦¬ ë¹ë ìí를 ë³ê²½íë©´ ì측 í¸ë¦¬ ìì±ì´ ì¤í¨í©ëë¤. ê·¸ë¬ë, document.write()를 ë¹ì ìì ì¼ë¡ ì¬ì©íë ê²½ì°ìë§ ë¬¸ì ê° ë°ìí©ëë¤. í¼í´ì¼ í ì¬íì ìëì ê°ìµëë¤.
- ë¶ê· íí í¸ë¦¬ë¥¼ ì¬ì©íì§ ë§ì¸ì.
<script>document.write("<div>");</script>ë ì못ëììµëë¤.<script>document.write("<div></div>");</script>ë ì¬ì©í´ë ê´ì°®ìµëë¤. - ìë£ëì§ ìì í í°ì ìì±íì§ ë§ì¸ì.
<script>document.write("<div></div");</script>ë ì못ëììµëë¤. - ìºë¦¬ì§ 리í´ì¼ë¡ ê¸ ìì±ì ë§ë¬´ë¦¬íì§ ë§ì¸ì.
<script>document.write("Hello World!\r");</script>ë ì못ëììµëë¤.<script>document.write("Hello World!\n");</script>ë ì¬ì©í´ë ê´ì°®ìµëë¤. - ê· íì¡í í그를 ìì±íë©´ ì°ê¸° ë¶ê· íì ë§ëë ë°©ìì¼ë¡ ë¤ë¥¸ íê·¸ê° ì¶ë¡ ë ì ììµëë¤. ì,
headìì ë´ë¶ì<script>document.write("<div></div>");</script>ë ë¶ê· íí<script>document.write("</head><body><div></div>");</script>ë¡ í´ìë©ëë¤. - í
ì´ë¸ì ì¼ë¶ë¥¼ ììííì§ ë§ì¸ì.
<table><script>document.write("<tr><td>Hello World!</td></tr>");</script></table>ë ì못ëììµëë¤.