JavaScript/JSON接口描述语言
以此为例,。您可以看到,Javascript方法返回的对象由元语言描述。该页中的以下代码段:JavaScript/JSON接口描述语言,javascript,metadata,Javascript,Metadata,以此为例,。您可以看到,Javascript方法返回的对象由元语言描述。该页中的以下代码段: interface Node { type: string; loc: SourceLocation | null; } 描述一个名为节点的对象,该对象有两个属性:类型和位置。以及以下各项: interface Program <: Node { type: "Program"; body: [ Statement ]; } 这是一种记录公开特定API的Ja
interface Node {
type: string;
loc: SourceLocation | null;
}
描述一个名为节点
的对象,该对象有两个属性:类型
和位置
。以及以下各项:
interface Program <: Node {
type: "Program";
body: [ Statement ];
}
这是一种记录公开特定API的Javascript对象的聪明方法!但在这里找不到标准
问题我想了解更多关于这种元语言的信息,但在互联网上找不到资源。但是,为了使这个问题具有可回答性和非一般性,作为初学者,请考虑以下问题:
请注意,此问题与ASTs无关我不在乎他们!我链接的页面恰好是关于ASTs的,但这是因为我找不到另一个使用这种元语言记录JS内容的网页或库。我只是想更多地了解该页面中用于记录其JavaScript对象的元语言以及它们公开的API。我也花了相当长的时间寻找该格式的规范或某种描述。一些项目似乎正在使用这种类型的IDL来记录AST,包括Babel、Handlebar和ESTree 我在EstreeGithub存储库中发现了一个问题,即它是一种自定义语法。我想知道这是不是真的,因为这么多大型项目会决定使用这样一种未记录的语法,这似乎很奇怪
interface MyObject {
path: string;
indices: [int];
evaluateScore: function;
}