【问题标题】:What does "defaults" contain?“默认值”包含什么?
【发布时间】:2013-03-05 14:17:47
【问题描述】:

我正在使用 Esprima 解析器,它输出与Mozilla Spider Monkey Parser API 兼容的AST 格式。

Mozilla Docs中,指定Function节点为:

interface Function <: Node {
    id: Identifier | null;
    params: [ Pattern ];
    defaults: [ Expression ];
    rest: Identifier | null;
    body: BlockStatement | Expression;
    generator: boolean;
    expression: boolean;
}

defaults 属性将包含什么?它总是显示为一个空数组。

【问题讨论】:

    标签: parsing ecmascript-5 abstract-syntax-tree spidermonkey


    【解决方案1】:

    Mozilla JS AST 的默认值包含 ES6 默认参数值。

    例如,

        function t(i = 20) { }
    
    defaults will be [{ type: 'Literal', value: 20 }].
    

    由于是基于 ES6 草案,Esprima master 分支无法识别。

    【讨论】:

      猜你喜欢
      • 2011-06-26
      • 1970-01-01
      • 1970-01-01
      • 2017-01-20
      • 2020-04-20
      • 2021-09-07
      • 2020-04-21
      • 2018-10-26
      • 2011-08-29
      相关资源
      最近更新 更多