This is a pure JS implementation of DOM parsing, to be used instead of DOMParser in a browser. We use sax.js for the low-level parsing, and convert it to the browser's native Document object, or xmldom.
The built-in DOMParser in modern browsers should be sufficient for most use cases, and has very good performance. However, it does have some limitations:
- Error reporting is very different on the different browsers. The browser typically stops after the first error.
- It's not possible to get access to position info (what line/column an element is on).
This project aims to be a lightweight replacement for the built-in parser, with better error handling and position reporting.
const { DOMParser } = require('@journeyapps/domparser');
var doc = new DOMParser().parseFromString("<test>xml</test>");
Should work on any browser that supports ES6.
Tested on recent versions of Node, Chrome and Firefox.
When running in Node, a recent version of xmldom is required.
All files in this project are licensed under the MIT license.