Что такое DOMString на самом деле?

Я наткнулся на DOMString, прочитав спецификацию HTML. В некоторых исследованиях были найдены следующие данные:

Из MDN:

DOMString - это строка UTF-16. Поскольку JavaScript уже использует такие строки, DOMString отображается непосредственно на String.

Из Спецификация W3C:

A DOMString представляет собой последовательность 16-разрядных единиц.

Но у меня все еще есть следующие вопросы:

  • Что такое DOMString на самом деле и для чего он используется?
  • Почему он называется DOM Строка, а не UTF16 String? Более конкретно, как это связано с DOM?
  • Если я UTF-16 кодирует a String, становится ли он DOMString?

Ответ 1

Это независимый от реализации интерфейс DOM для строк UTF-16.

Строки JavaScript уже являются строками UTF-16, поэтому любой экземпляр JavaScript String автоматически также является экземпляром DOMString.

Интерфейс предназначен для реализаций, которые по умолчанию не реализуют последовательности как UTF-16, поэтому они могут реализовать отдельный тип для привязки к DOMString, если это необходимо. Причина, по которой необходим независимый от реализации интерфейс, заключается в том, что, как указывает спецификация, "[обеспечить] совместимость".

Почему он называется DOMString? Предположительно потому, что это связано с DOM. Как это относится к DOM? Ну, это часть стандарта DOM, для одного.