JSX 即 JavaScript XML——一种在 React 组件内部构建标签的类 xml 语法。React 在不使用 JSX 的情况下一样可以工作,然而使用 JSX 可以提高组件的可读性,因此推荐你使用 jsx。
举个例子,在不使用 jsx 的 React 程序中创建一个标题的函数调用大概是这样:
//v0.11
React.Dom.h1({className:'question'},'Questions');
//v0.12
React.createElement('h1',{className:'question'},'Question');
如果使用了JSX,上述调用就变成了下面这种更熟悉且简练的标签;
<h1 className="question">Question</h1>
与以往在 JavaScript 中嵌入 HTML 标签的几种方式相比,jsx 有如下几点明显的特征;
1.jsx 是一种句法变换——每一个 JSX 节点都对应着一个 JavaScript 函数;
2.JSX 既不提供也不需要运行时库;
3.JSX 并没有改变或添加 JavaScript 的语义——他只是简单的函数调用而已。
与 HTML 相似之处赋予了 JSX 在 React 中的强大的表现力。