ブラウザ上で動くjavascriptエディターを作っている関係で, エラー/ワーニングを表示するために,ユーザーが作ったjavascriptの構文解析をする必要がありました. Lintで全部網羅できれば良かったのですが,独自のワーニングを出したかったりもしたので,構文解析をやりました. 構文解析なんて触れる機会がなかったので,どういうものなのか から調べてみました. ##構文解析について AST(Abstract Syntax Tree)というらしいです. たとえば,下のコードを構文解析すると /** * comment */ function printTips() { var myHeading = document.querySelector('h1'); myHeading.textContent = 'Hello world!'; } { "type": "Program", "