JSX 使用哪个解析器?

Which parser JSX uses?

正如名称 JSX 中提到的那样,它是必须有结束标记等的限制。 我认为 JSX 使用 XML 解析器。 如果使用 XML 那么为什么选择 XML not HTML

来自the docs

"JSX Specification: XML-LIKE SYNTAX EXTENSION TO ECMASCRIPT"

回答您的问题:"why choose XML not HTML",因为这允许它成为 HTML 的超集并包含用户定义的标签。例如,它允许您定义一个 "MyApp" 标签(组件)并使用它:<MyApp name="some name" />。因为它是 "XML-LIKE SYNTAX EXTENSION TO ECMASCRIPT",所以您可以将它与 javascript:

一起使用
function calculatedComplexName() {

    return "some complex name";
}

<MyApp name={calculatedComplexName()}/>