javascript - 有了ES6 的 class ,还有必要去搞明白 ES5 的继承,面向对象方法吗?

查看:87
本文介绍了javascript - 有了ES6 的 class ,还有必要去搞明白 ES5 的继承,面向对象方法吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

ES6 的 class 虽然知识语法糖,但是毕竟已经是标准了,目前作为入门的前端er,还有必要去搞明白 ES5 的那一套对象原型的写法吗?或者是拥抱 ES6?

补充下:我理解 python 的面向对象方法


11-12 补充:
感谢楼下各位的回复。

既然 ES6 增加了「类」的概念。单单从学习的角度来说,为什么不能像其他的编程语言那样直接从「类」开始学习呢?如果你有其他语言面向对象的经验,那么也可以避免之前原型链,继承的繁琐,和难以理解的坑。

我个人武断的觉得,class 的出现标志着之前那一套原型继承的方案已经过时了
看了各位的回答,前几天老老实实学习了原型链及继承的基本原理,厘清楚了一下概念。然后再回过头来学习 ES6 的类时觉得更加的通透,觉得理所当然。

谢谢

解决方案

ES6,或者说typescriptcoffescript(本质上不一样,但从使用体验来讲是差不多的)这种,虽然写起来很爽。

但是还是有很多缺点的(至少在目前主流浏览器不支持的情况):

  1. 需要用babeltsc(typescript)转换,需要配置webpack或类似工具,还要确保这些转换器没有什么奇怪的坑,最好要研究下他的转换过程。

  2. 目前还有大部分的js库是用的es5的语法,指不定什么时候需要研究参考下,更别说还需要维护那些原来用es5写的项目了(当然如果有时间的话,你可以用es6重构下,但也是需要花费不少时间的,特别是需要做很多单元测试,保证项目没有改出问题)。

当然如果是你主导的新项目,或者说是那种比较新的项目,当然是推荐ES6来写,毕竟更爽,改进了很多,写起来也更加方便。但是在ES5没完全淘汰之前,ES5还是必须看的,况且你要学的ES6也是大部分从ES5改进过来的。

这篇关于javascript - 有了ES6 的 class ,还有必要去搞明白 ES5 的继承,面向对象方法吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆