es6还是ts?

今年年初转行的,已经用angular2+ts做了三个项目了。
最近上班没事做了,我学es6还是ts呢

阅读 16.8k
10 个回答

ES6是JavaScript的新的语法标准,typescript是微软出的一套语法

目前浏览器已经部分支持ES6的语法特性,当然用于线上的时候还是需要工具转换成es5,但是可以预见未来浏览器肯定是全面支持es6的,到时候es6编写的程序能够直接运行。

所以你可以自己在权衡下。

实际上你在使用typescript的时候就已经在使用ECMAScript 6的特性了(如箭头函数, Promise), 因为typescript是ES6的严格超集, 任何符合ES6规范的JavaScript代码都是合法的typescript. 同时, typescript作为一种预编译语言可以迅速的采纳新语言规范的特性(如对ES7 async/await特性的支持), 然后转换为当前浏览器支持的js代码, 大大降低代码量

当然, 作为es6规范语法实现的超集, interface, class成员类型等一系列非es6规范的特性也对于开发大规模应用的模块化也是相当有优势的(尽管我认为这些特性很快就会纳入规范)

此外, 引出的问题是因为typescript并不像JavaScript一样是对标准的底层实现, 只是转译到标准JavaScript, 万一typescript某一天不再支持ECMAScript规范的话, 那就被坑了.

ES6未来是标准,浏览器可能会支持。ts不会成为标准,需要预编译。一个是正规军,一个是地下党。

ES6 趋势。ts基于es6

这俩没冲突,ES6是必须学的,如果你想继续做js的话。新标准肯定会逐渐取代之前的,如果你不学,以后无论写代码还是读代码都会有一定困难。至于ts就随意了。

不冲突 而且angular2官方也推荐ts, 还有ts虽然需要编译, 但是可以保证es6 es5等切换

没什么矛盾吧

当然是es6 以后的标准,凡事都得遵守规矩,尤其是代码,不遵守必要的规矩肯定报错

两者并不矛盾。ts 是 js 的超集。
非要选一个,学 ts 吧。因为你现在已经在用 angular2 了。

ts包含es6,会ts就会es6。。。

推荐问题