JavaScript巨匠必需控制的12个知识点

译者按: 前端手艺触及的越来越多!

为了保证可读性,本文采纳意译而非直译。别的,本文版权归原作者一切,翻译仅用于进修。

既然你对这篇文章感兴趣,我想你应该是一位前端开辟,或许你有一份不错的事变、自立创业以至是一位自在从业者。不知你的前端手艺怎样,或许你是一位新手,亦或是一位资深开辟。
假如你想让本身成为一个 JavaScript 巨匠,在此我列出 12 条必备学问:

1. 控制流(Control Flow)

我们从最基本的开讲。固然,它也是最主要的一个学问点。假如你连这个都没有整邃晓的话,那你的代码生涯将会很困难。

  • if else : 假如连这个都不晓得,之前怎样码代码的?
  • switch : 当有许多的状况要处置惩罚(>2)的时候,用它准没错。
  • for: 不要去编写反复的代码,请运用 for。for offor in都异常轻易。一个很大的上风在于 for 轮回是壅塞式的,能够合营async await运用。
  • 高阶的前提语句: 运用三元运算符或则逻辑推断。假如想把代码写得简约,以至不须要存储中心值的话,能够这么做。
// ternary
console.log(new Date().getHours() < 12 ? "Good Morning!" : "Time for a siesta");

// logical operators
const isJsMaster = prompt("Are you a JavaScript master?") === "true";
console.log(isJsMaster && "proficient coder");

2. 异常处置惩罚

不论前端照样后端工程师,作为一个新手,常常会运用console.log或则console.error来处置惩罚毛病。为了写出硬朗的运用,则须要改掉随处运用 console.log 的习气,构建本身的异常处置惩罚器,然后文雅地处置惩罚异常。
你或许对怎样处置惩罚异常很感兴趣,能够看看我写的这篇文章

3. 数据模子

须要想清晰怎样组织数据(兼并或则星散),这不单单议关乎在数据库里怎样定义其模子,同时也包含了函数参数,定义的变量、对象等等。

const calcShape = (width, height, depth, color, angle) => {...}
const calcShape = ({width, height, depth, color, angle}) => {...}

4. 异步性

这个是 JavaScript 异常主要的一个特征,要么须要从服务器猎取数据或则在服务器端异步去处置惩罚要求。险些在一切的状况下,都要面临异步。假如搞不清晰异步,能够会碰到异常新鲜的报错,以至于要花费几个小时去搞定它。假如你晓得异步,然则没有完整明白,那末能够掉入“回调地狱”。如今,最好的要领是运用 Promises 和async await

5. 支配 DOM

关于开辟者来讲,一般已学会了 jQuery,好像不须要再去相识怎样直接支配 DOM 的技能。以至直接运用前端框架,基础不须要去支配 DOM 了。然则,我以为关于明白前端 JavaScript,这是必不可少的一环。晓得 DOM 的事变道理以及怎样支配 DOM 元素会让你对网页的事变机制有越发清晰的明白。而且,只管运用了前端框架,总有些状况下你须要直接支配 DOM。打个比方,假如仅仅只是想接见某个元素,你一定不想把全部 jQuery 都导入到项目中吧。

6. Node.js / Express

作为一位前端开辟,依旧须要进修一点 Node.js。最好晓得怎样用 Express 疾速搭建一个服务器,而且运用路由功用。JavaScript 作为一门“剧本”言语,很适宜定义种种自动化使命,因而晓得怎样读取文件,支配 Buffer 能够助你构建事变流。

7. 函数式编程

函数式编程和面向对象编程哪一个更好的争辩由来已久。实在,你能够运用任何一种编程体式格局到达雷同的目标。在 JavaScript 中,事变变得简朴,两种体式格局任你遴选。像lodash就以函数式的角度供应了异常多的东西函数。如今,以至许多函数已内置完成,无需导入外部库,比方map,reduce,filter,forEach,find

8. 面向对象编程

和函数式编程相似,你一样须要熟习面向对象的 JavaScript 编程。我曾很长一段时候谢绝在 JavaScript 中运用面向对象,然则厥后发明运用对象/类/实例的体式格局确切会越发适宜。类(class)普遍运用于 React, Mobx 或则一些自定义的组织函数中。

9. 前端框架

现今最盛行的三大框架:React.js,Angular 和 Vue.js。假如你在找一个前端的事变,在简历上面最少须要列出它们其中之一。只管它们更新很快,你须要明白它们整体的事变道理。而且,对底层道理的明白能够让你更好地运用框架编写运用。假如还不肯定上哪辆车,我发起进修 React.js。我已运用了好些年,而且不忏悔当初的挑选。(译者发起 Vue.js,简朴好用上手快)

10. 编译(transpilation)/打包

很不幸,在 Web 开辟中这一事变占了很大比重。一方面我又不能说不幸,它使得我们能够用最新的特征来编写代码。我说不幸是因为我们须要时候注重新的特征在某些旧版本的浏览器不支持,须要将其翻译到低版本浏览器诠释的代码。业界的通用标准是babel.js,你须要熟习它。关于打包,能够运用老大哥Webpack ,或则后起之秀parcel。我倾向于运用 parcel,只管不圆满,然则它机能很好,而且设置轻易。

11. 正则表达式

不单单议针对 JavaScript,然则真的异常有效,也很轻易让人疑惑。控制正则表达式会花点时候,不须要记着一切的状况,能够边查边用。

12. 测试

正如Paul Kamma指出,在软件开辟中,测试真的是一个异常主要的部份。JavaScript 也不破例,在宣布新功用前,最好是(一定要)对代码举行充足的测试。以至某些状况下须要手动支配,也是值得的。固然,运用自动化测试东西才一劳永逸,测试包含:单元测试、端到端测试、加载速率测试、平安测试或则前端测试(组件是不是加载)。如今市面上已有许多用于测试的东西,比方 enzyme, jasmine, mocha, chai 等等。我如今最喜欢的是ava.js

关于Fundebug

Fundebug专注于JavaScript、微信小顺序、微信小游戏、支付宝小顺序、React Native、Node.js和Java线上运用及时BUG监控。 自从2016年双十一正式上线,Fundebug累计处置惩罚了10亿+毛病事宜,付费客户有Google、360、金山软件、百姓网等浩瀚品牌企业。迎接人人免费试用

《JavaScript巨匠必需控制的12个知识点》

版权声明

转载时请说明作者Fundebug以及本文地点:
[https://blog.fundebug.com/201…

    原文作者:Fundebug
    原文地址: https://segmentfault.com/a/1190000018748741
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞