javascript - 在<script>標(biāo)簽中輸出</script>的疑問(wèn)
問(wèn)題描述
問(wèn)題描述:
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Document</title></head><body> <script> console.log('</script>'); </script></body></html>
無(wú)法輸出,報(bào)錯(cuò):Uncaught SyntaxError: Invalid or unexpected token。
這屬于是瀏覽器的BUG嗎?
問(wèn)題解答
回答1:結(jié)合瀏覽器看起解析,估計(jì)能明白,因?yàn)槟阋猚onsole的是一個(gè)script的結(jié)束標(biāo)簽,瀏覽器在解析html標(biāo)簽的時(shí)候,直接就把它當(dāng)做結(jié)束標(biāo)簽用了,這時(shí)候你會(huì)看到頁(yè)面上只顯示了');,余下的本來(lái)是真正的結(jié)束標(biāo)簽,被當(dāng)做多余處理掉了。

類(lèi)似情況還有
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Document</title></head><body> <script> //</script> </script></body></html>
從解析標(biāo)簽的角度來(lái)看,瀏覽器:“這鍋我不背”。
如果要正常顯示,可以 加轉(zhuǎn)義
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Document</title></head><body> <script> console.log('</script>'); </script></body></html>回答2:
瀏覽器內(nèi)核的HTML解析器是一種“狀態(tài)機(jī)”的處理方式;html解析原理
回答3:谷歌可以輸出
相關(guān)文章:
1. boot2docker無(wú)法啟動(dòng)2. java - SSH框架中寫(xiě)分頁(yè)時(shí)service層中不能注入分頁(yè)類(lèi)3. 關(guān)于docker下的nginx壓力測(cè)試4. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.5. 為什么我ping不通我的docker容器呢???6. mac里的docker如何命令行開(kāi)啟呢?7. node.js - antdesign怎么集合react-redux對(duì)input控件進(jìn)行初始化賦值8. 老師,按tab鍵不起作用怎么回事9. docker鏡像push報(bào)錯(cuò)10. dockerfile - 為什么docker容器啟動(dòng)不了?

網(wǎng)公網(wǎng)安備