#javascript
#javascript
Вопрос:
У меня есть функция, которая проверяет, является ли элемент допустимым элементом HTML.
export function isValid(element) {
return element.toString() !== "[object HTMLUnknownElement]";
}
Я хочу прокомментировать эту функцию, но я не знаю, какой тип данных я должен использовать для параметра. Это элемент узла.
/**
* @param {Object} element - Node element that is being checked
* @returns {Boolean} - Returns "true" for valid element and "false" for unknown HTML element.
*/
export function isValid(element) {
return element.toString() !== "[object HTMLUnknownElement]";
}
Является ли параметр объектом или это что-то другое @param {NodeElement}
?
Я проверил https://jsdoc.app/tags-param.html но не могу найти ответ на него.
Комментарии:
1. Это должно быть
HTMLElement
. Все элементы наследуются от этого типа, включаяHTMLUnknownElement
2. @HaoWu спасибо, я думаю, это то, что я ищу
3. @HaoWu Я думаю, вы должны опубликовать это в качестве ответа. Я собирался сказать то же самое
4. @SebastianKaczmarek Вы правы, позвольте мне опубликовать это в качестве ответа.
Ответ №1:
Это должно быть HTMLElement
. Все элементы HTML наследуются от этого типа, включая HTMLUnknownElement
Кроме того, при проверке вы могли бы использовать
export function isValid(element) {
return !(element instanceof HTMLUnknownElement);
}
В случае, если toString
функция этого элемента была перезаписана.