纯javascript中的DOM实现?

纯javascript中的DOM实现?,javascript,dom,Javascript,Dom,是否有纯javascript的DOM实现或仿真 有env.js,但这需要Rhino 有jsdom,但这需要节点 有没有一种解决方案可以在大多数javascript解释器(如v8)中工作,而不必绑定到任何特定的解释器或引擎?也就是说,在JS中是否有任何DOM实现,在没有任何设置或垫片的情况下,可以将其放入javascript解释器并运行?这里很难猜测您到底想做什么,但我会尝试一下,只是为了让对话继续下去: 如果您试图在浏览器中操作DOM,您不能直接使用它吗 如果你想买个“无头浏览器”,我会退

是否有纯javascript的DOM实现或仿真

  • 有env.js,但这需要Rhino
  • 有jsdom,但这需要节点

有没有一种解决方案可以在大多数javascript解释器(如v8)中工作,而不必绑定到任何特定的解释器或引擎?也就是说,在JS中是否有任何DOM实现,在没有任何设置或垫片的情况下,可以将其放入javascript解释器并运行?

这里很难猜测您到底想做什么,但我会尝试一下,只是为了让对话继续下去:


  • 如果您试图在浏览器中操作DOM,您不能直接使用它吗
  • 如果你想买个“无头浏览器”,我会退房的

我想很难想象在没有浏览器、Rhino、Node、PhantomJS或其他JS解释器环境的情况下如何运行Javascript代码……

除了您列出的那些,我还听说了一些好消息。它需要有限的ES6功能,例如
const
WeakMap
Proxy
,因此它可以在V8和SpiderMonkey(Rhino)中工作,但不能在JavaScriptCore、Chakra或其他方面工作。

您能解释一下为什么需要它吗?它是为了测试javascript代码。我正在寻找类似的东西,我的理由是:我想在v8 js引擎中运行它(由golang绑定到v8控制),但不一定在node中运行。@JPuge这样的问题总是随着时间的推移而延迟。原因可能包括:在web workers中使用DOM,在运行HTML和Javascript的自定义本机应用程序中使用DOM,使用Javascript验证某些HTML文件……如果您试图在浏览器中操作DOM,您不能直接使用吗?我意识到这不一样。。。然而,他要求教人们如何使用domapi,而不是在上面抽象出一个层,这将是最好的。事实上,这是从浏览器和它们的陷阱中抽象出DOM来测试代码。