JavaScript 一团乱,这是好事

简介:

译者按: JavaScript从简单变复杂了,作者从另一个角度看待这个问题。

为了保证可读性,本文采用意译而非直译。另外,本文版权归原作者所有,翻译仅用于学习。

JavaScript从不移除旧的特性,新版本总是向后兼容。我希望我们能够把那些重复的旧的特性清理一下,但是保持兼容有太多的好处。我在本文会解释。

1. 向后兼容的优势

  1. 迁移到新的语言版本是一件轻而易举的事情。举个例子,如果你使用ES6,所有旧代码无需任何改动。
  • 只有ES模块很难采用,因为它破坏了向后兼容性。
  1. 避免了代码版本化。如果你允许一些代码是“旧”的,有一些是“新”的:
  • 语言引擎和工具变得更加复杂
  • 开发人员需要小心应对不同的版本
  • 你不能随意移动代码了(如果代码基础库是混合的)

2. 一些处理JavaScript扩展功能的技巧

  • 授课和学习:你可以直接忽略旧的特性,不仅仅是它们长什么样,它们干嘛也无需知道
  • 使用Linter来辅助码代码
  • 使用Prettier来美化代码

3. 一个干净的JavaScript

如果你想要使用一个比较简洁的JavaScript,你可以忽略很多旧的语法,下面是一些建议:

  • var: 使用let和const
  • function: 使用箭头函数和方法定义(method definition)。优势:更容易处理this。(具体信息)
  • Promises: 只使用async函数。你不能完全避开使用Promises。
  • 迭代访问对象:使用map
  • 循环:避免使用for-in,尽量避免使用for, 建议使用for-of。
  • 参数:使用rest parameters(...args)
  • Function.prototype.apply():使用spread operator(f(..myArray))
  • 构造函数:使用class
  • IIFEs(立即调用函数): 使用块作用域

4. 待定

typeof和instanceof非常复杂,我无法建议哪个取代哪个。推荐这篇博客:Beyond typeof and instanceof: simplifying dynamic type checks

5. 阅读更多

关于Fundebug


Fundebug专注于JavaScript、微信小程序、小游戏BUG监控,自从2016年双十一正式上线,Fundebug已经服务了一年半时间,累计处理了5亿+错误事件,得到了众多知名用户的认可。Fundebug支持主流前端框架的bug监控,欢迎各位老铁体验!


原文发布时间为:2018年07月03日
原文作者:Fundebug
本文来源:  掘金  如需转载请联系原作者

目录
打赏
0
0
0
0
5422
分享
相关文章
JavaScript编程语法练习
本篇文章是对于javaScript中if ,switch,while ,do-while,,for语法的作业练习.对于我来说也是对自己知识掌握的一种检验.是对js的基础语法进行的一次练习,通过有趣的示例进行练习,使得对于代码能够增加印象,对于知识的掌握更加透彻.
JavaScript!震惊你,只需一行代码!
JavaScript!震惊你,只需一行代码!
JavaScript波澜起伏的一生
JavaScript俨然是热度最高的编程语言之一,作为前端开发在工作中总离不开写JS,但有些疑问总在我脑海中:它与Java到底什么关系?所谓的ES、TS又是什么?现在就让我们一起走进JS的前世今生吧。
 JavaScript波澜起伏的一生
正经人一辈子都用不到的 JavaScript 方法总结 (一)
假如有这样一个需求:要求将给定的一个文件路径 D:\bianchengsanmei\blogs\categories\JavaScript 在页面展示出来。
142 0
正经人一辈子都用不到的 JavaScript 方法总结 (一)
正经人一辈子都用不到的 JavaScript 方法总结 (二)
现在有这样一个需求:用一个对象存储某学生的各科成绩,要求每次只能改变科目分数,不能再添加或者删除科目。
109 0
正经人一辈子都用不到的 JavaScript 方法总结 (二)
关于如何学好JavaScript,我出了一本书
现在是2019年11月2日,从刚开始写这系列文章到现在已经过去两年多时间了。两年以来,阅读过这系列文章的朋友远超我的想象。在简书这样一个鲜为人知的平台上,阅读量超过10W+。技术文章能够有这样的热度,非常非常难,因此内心很有成就感,每当看到大家留言对这系列文章的肯定与鼓励,心中都非常开心。 偶尔有朋友留言建议我说,这系列文章可以出书。其实两年以前就出了。
179 0
关于如何学好JavaScript,我出了一本书