考慮這個片段
const div = document.createElement('div');
div.innerHTML = null; // 1
console.log(`After setting null: "${div.innerHTML}"`);
div.innerHTML = undefined; // 2
console.log(`After setting undefined: "${div.innerHTML}"`);
為什么第一個片段沒有innerHTMLyield "null"?我希望該值與預期的結果innerHTML = value相同?產量。String(value)DOMStringString(null)"null"
MDN 也提到了ToString回傳的方法"null"。唯一可能暗示這種特殊行為的是頁面上的這個片段DOMString
某些接受 DOMString 的 Web API 有一個額外的遺留行為,其中將 null 字串化為空字串,而不是通常的“null”。
是否有任何明確的地方(規范或其他)可以確認這種行為?
uj5u.com熱心網友回復:
是的,有一個規范:https ://w3c.github.io/DOM-Parsing/#the-innerhtml-mixin
innerHTMLLegacyNullToEmptyString具有描述此行為的“IDL 擴展屬性” 。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/465628.html
標籤:javascript html
上一篇:如何為日期選擇器設定最小日期
下一篇:給定格式的兩級物件
