栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

尝试将DOMParser与Node JS一起使用

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

尝试将DOMParser与Node JS一起使用

NodeJS本身不提供许多浏览器功能,例如DOM操作或XHR,因为这不是访问DOM的典型服务器任务-您必须使用外部库来执行此操作。

DOM的能力在很大程度上取决于库,以下是您可以使用的主要工具的快速比较:

  • jsdom
    :实现DOM级别4,这是最新的DOM标准,因此您可以在现代浏览器中执行的所有操作都可以在
    jsdom
        const jsdom = require("jsdom");    const dom = new jsdom.JSDOM(`<!DOCTYPE html><p>Hello world</p>`);    dom.window.document.querySelector("p").textContent; // 'Hello world'
  • htmlparser2
    :相同,但以更复杂的API为代价,具有增强的性能和灵活性:
        const htmlparser = require("htmlparser2");    const parser = new htmlparser.Parser({      onopentag: (name, attrib) => {        if (name=='p') console.log('a paragraph element is opening');      }    }, {depreEntities: true});    parser.write(`<!DOCTYPE html><p>Hello world</p>`);    parser.end();    // console output: 'a paragraph element is opening'
  • cheerio
    :基于HTML DOM解析的jQuery实现
    htmlparser2
        const cheerio = require('cheerio');    const $ = cheerio.load(`<!DOCTYPE html><p>Hello world</p>`);    $('p').text('Bye moon');    $.html(); // '<!DOCTYPE html><p>Bye moon</p>'
  • xmldom
    :完全实现DOM级别2,部分实现DOM级别3。与HTML以及XML一起使用

  • dom-parser
    :基于正则表达式的DOM解析器,它实现了一些DOM方法,例如
    getElementById
    。由于用正则表达式解析HTML是一个非常糟糕的主意,因此我不建议将其用于生产。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/427120.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号