I tried to use the parse() function of JSLint to parse three pieces of JavaScript code:
- function(b, c){var a = b + c; return a; }
- window.addEventListener('click', click_hanlder, true);
- document.documentElement.innerHTML;
The output:
- returns a correct tree.
- returns a tree with only one node of "window".
- crashes the browser.
I'm wondering whether JSLint doesn't support DOM function.
Here's the the way I used the parse() function, which is copied and pasted from the JSLint self-parse example, with replacing the "source" variable :
try {
parse = make_parse();
var source = "something to parse";//replaced by the three inputs above
tree = parse(source);
if (tree) {
document.write(JSON.stringify(tree, ['key', 'name', 'message',
'value', 'arity', 'first', 'second', 'third', 'fourth'], 4));
}
} catch (e) {
document.write(JSON.stringify(e, ['name', 'message', 'from', 'to', 'key',
'value', 'arity', 'first', 'second', 'third', 'fourth'], 4));
}