Блок предоставляет хелперы для манипуляций с данными строчного типа.
| Элемент | Способы использования | Описание |
|---|---|---|
| escape | JS |
Набор методов для экранирования (эскейпинга) управляющих символов XML и HTML. |
| Элемент | Имя | Тип или возвращаемое значение | Описание |
|---|---|---|---|
| escape | xml(str {String}) |
String |
Служит для экранирования управляющих символов XML. |
html(str {String}) |
String |
Служит для экранирования управляющих символов HTML. | |
attr(str {String}) |
String |
Служит для экранирования управляющих символов в HTML и XML атрибутах. |
Блок реализован в технологиях:
vanilla.jsescapeЭлемент предоставляет объект, содержащий набор методов для экранирования (эскейпинга) управляющих символов XML и HTML.
xmlСлужит для экранирования управляющих символов XML. Обрабатываются символы &, <, >.
Принимаемые аргументы:
str {String} – строка для обработки. Обязательный аргумент.Возвращаемое значение: String. Строка с экранированными управляющими символами.
htmlСлужит для экранирования управляющих символов HTML. Является синонимом метода xml.
attrСлужит для экранирования управляющих символов в HTML и XML атрибутах. Обрабатываются управляющие символы ", \, ', &, <, >.
Принимаемые аргументы:
str {String} – строка для обработки. Обязательный аргумент.Возвращаемое значение: String. Строка с экранированными управляющими символами.
Например, в блоке common.blocks/select библиотеки bem-components, strings__escape используется для экранирования управляющих символов в свойстве value HTML-элемента:
_createControlHTML : function(name, val) {
// Using string concatenation to not depend on template engines
return '<input ' +
'type="hidden" ' +
'name="' + name + '" ' +
'class="' + this.buildClass('control') + '" ' +
'value="' + escape.attr(typeof val === 'object'? JSON.stringify(val) : val) + '"/>';
}