首页 > 解决方案 > JSdoc:函数参数中的节点元素类型

问题描述

我有一个函数可以检查元素是否是有效的 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但找不到答案。

标签: javascript

解决方案


它应该是一个HTMLElement. 所有 HTML 元素都继承自该类型,包括HTMLUnknownElement

此外,当你检查它时,你可以使用

export function isValid(element) {
  return !(element instanceof HTMLUnknownElement);
}

如果toString该元素的功能已被覆盖。


推荐阅读