Javascript 我如何知道V8中有哪些功能?
我是一名web开发人员,因此我对任何Javascript文档的第一个调用端口通常是MDN。例如,现在我想使用,它在Chrome中有支持 然而,当我通过V8节点或运行JavaScript时,找不到DOMParserJavascript 我如何知道V8中有哪些功能?,javascript,v8,Javascript,V8,我是一名web开发人员,因此我对任何Javascript文档的第一个调用端口通常是MDN。例如,现在我想使用,它在Chrome中有支持 然而,当我通过V8节点或运行JavaScript时,找不到DOMParser ~/$ node Welcome to Node.js v12.4.0. Type ".help" for more information. > DOMParser; Thrown: ReferenceError: DOMParser is not defined >
~/$ node
Welcome to Node.js v12.4.0.
Type ".help" for more information.
> DOMParser;
Thrown:
ReferenceError: DOMParser is not defined
>
是否存在只在浏览器中工作的JavaScript子集?如何找出V8支持哪些功能?大多数web开发人员认为,在web开发中使用的javascript中的任何可访问对象、原型和方法都是纯javascript功能,而这种想法实际上并不正确。web开发中的一些对象,如XMLHttpRequest、DOMParser等,是文档对象模型DOM的一部分,只有在浏览器平台上才能访问它们 如果您使用的是Nodejs,并且希望解析html文本,我认为Jsdom库可以满足您的以下要求:
const jsdom = require("jsdom");
const { JSDOM } = jsdom;
const dom = new JSDOM(`<!DOCTYPE html><p>Hello world</p>`);
console.log(dom.window.document.querySelector("p").textContent);
我希望这将有助于您官方明确的答案是:当它是的一部分时,它将由ECMAScript engines V8、SpiderMonkey和JSC实现/支持。在MDN中找到的所有其他内容(例如,任何与DOM和网络相关的内容)都是特定于浏览器环境的,并由相应的浏览器实现
为了便于阅读,MDN似乎也保持了这种分离。DOMParser在任何实现中都不是JS的一部分,它是一个WEB API,即DOM对象。