JS 将 HTML 字符串转换成数组

Array.prototype.slice.call

在 JavaScript 中 使用 fetch API 返回包含HTML标签的字符串,下面的代码是将字符串转换成数组后的代码,具体如下:

/**
 * 将 HTML 字符串转换成数组
 * @author 智慧宫
 * @link   https://lerm.net
 *
 * @param {*} string
 * @returns {array}
 */
function parseToDOM(string) {
	let div = document.createElement("div");
	if (typeof string == "string") div.innerHTML = string;
	return Array.prototype.slice.call(div.childNodes);
}

如上代码中,首先创建一个<div></div> 标签,然后将 HTML 字符串插入到此标签中,作为子标签,使用childNodes 获取到子节点集合(返回 Nodelist 对象),这是一个类数组对象,必须使用Array.prototype.slice.call将其转换成数组。关于childNodesArray.prototype.slice.call请参考:

  • childNodes——————————–W3school
  • Array.prototype.slice.call——–MDN

发表评论

游客欢迎您123