jsx是什么?

jsx是什么?那天在家族群里看到这个问题,让我感到惊奇的是有人回答了这个问题,如下图…
jsx是什么?_第1张图片
我竟无言以对。
作为长期混在编程圈的码农来说,jsx的意思好像不太一样。

JSX是一种JavaScript的语法扩展,全称JavaScript XML,运用于React架构中,其格式比较像是模版语言,但事实上完全是在JavaScript内部实现的。元素是构成React应用的最小单位,JSX就是用来声明React当中的元素,React使用JSX来描述用户界面,能让我们可以在JS中写html标记语言。

虽然vue也有jsx的语法,但是一提到jsx想到的都是React,也许是React提供的Syntax Sugar的缘故吧。

JSX优点和特点

更加熟悉,语法跟HTML非常相似(90以上相似度)
更加语义化,允许自定义标签及组件。
更加直观,标签处理方式,更加可读。
抽象化,React的升级,不需要改动任何JSX代码。
关注点分离,模块化,JSX以干净且简洁的方式保证了组件中的标签与所有业务逻辑的互相分离

JSX与HTML有何不同

JSX跟HTML很像,但却不是HTML语法的完美复制。实际上,JSX规范中这样声明:

这个规范(JSX)并不尝试去遵循任何XML或HTML规范。JSX是作为一种ECMAScript特性来设计的,至于大家觉得JSX像XML这一事实,那仅仅是因为大家比较熟悉XML。

你可能感兴趣的:(前端,javascript,jsx,vue,react)