汗分析可汗挑战项目的解决方案。通过将代码模板进行比较,来提供有针对性的反馈。使用示例可以通过打开editor.html进行测试或修改。兼容浏览器包括最新版本的ChromeFirefoxSafariIE。API 方法包括:

  • setParser(parser, options):设置JavaScript代码的解析器(更多细节见src文件)。

  • setCheck(name, template):添加或更新在.test期间执行的检查。

  • removeCheck(name):删除指定的检查。

  • removeAllChecks():删除所有检查。

  • test(code):针对每个“检查”提供关于代码的反馈。

检查的模板格式包括:

  • typename:例如,'ForStatement'。

  • [typename]:例如,['IfStatement', 'VariableDeclaration']。

  • ast:例如,{type: 'ForStatement'},等同于typename的写法。

  • [ast]:例如,将多个 AST 类型组合在一起,提供更详细的检查机制。