这两天在看React的一些东西。打仗到了ES6。谈谈一些深刻的意见。
ES6实际上是个简称。这东西学名叫做ECMAScript 2015,或许ES 2015。是Javascript言语的一个新版本。新版本固然有新特征啦。ES6基本上是把Javascript内里比较独(qi)特(pa)的玩艺儿给熨平了。我曾听过一个podcast [1]。内里有人描述Javascript(ES6之前)为 “Charmingly Eccentric”。能够直译为“古怪到有魅力”。这里固然说的是Javascript内里的基于prototype的OO。ES6内里基本上这些是被弱化了的,或许说是被隐蔽起来了。
排列一些ES6的新东西(详细上面这些都是啥就不细致讲了–网上教程许多):
class
keywordextends
keyword字符串模板
解构
默许参数值
generator and
yield
keyworditerator like
for foo of bar
promise
固然啦,另有一些别的的新特征我就不一一列举了(实际上是不懂)。在上面这些当中,除了promise以外,险些都向盛行的言语语法挨近。尤其是向python挨近。1-7无一不是python一切的语法。如yield
之类更是照抄。
我的明白,如许革新规范的意义在于使得新手越发轻易进修了。如今javascript用的人愈来愈多。用处愈来愈广。而之前的”charmingly eccentric”的语法使得入门的门坎变高了。对我这类比较熟习python的人来说,能够直接用熟习的语法来编写顺序,然后transpile一下即可,对生产力照样有进步的意义的。然则,于此同时,javascript作为言语的奇特魅力被减弱了。毕竟不是每种言语都有prototype,不是每种言语都有无数callback的。应该说,明白这些“传统”的语法对ES6也很有意义。由于毕竟这些只是被隐蔽,而不是被剔除。真正用起来怎样,照样要真正写几个non-trivial的顺序才晓得。