超过20种资源来提高您JavaScript技能

JavaScript has never been more-used than today. It’s a real asset to get good at it. When discovering JavaScript, you first learn variables, if statements, loops, arrays, objects, functions! Maybe you even know what is this and how to use async/await. But that's just the tip of the iceberg. There's more to JavaScript you need to learn.

JavaScript从未像现在这样被广泛使用。 擅长于此是一项真正的资产。 发现JavaScript时,您首先要学习变量,例如语句,循环,数组,对象,函数! 也许你甚至不知道什么是this ,以及如何使用async/await 。 但这只是冰山一角。 您还需要学习JavaScript的更多知识。

To get better at JavaScript, you need to deeply understand its foundations, how it works under the hood. That can be a daunting task. But don’t worry, I got your back! I read and watched a lot of resources to get better at JavaScript, and I want to share that with you today.

为了更好地掌握JavaScript,您需要深入了解其基础,以及它的工作原理。 这可能是一项艰巨的任务。 但是不用担心,我得到了您的支持! 我阅读并观看了很多资源,以期使JavaScript变得更好,并且今天我想与您分享。

要学习的话题 (Topics to Learn)

To level-up your JavaScript skills, you’ll need to know:

要提高您JavaScript技能,您需要了解以下内容:

什么是JavaScript? (What is JavaScript?)

Multi-paradigm, dynamically typed, single-threaded, ECMAScript specification. You need to know what makes JS JS. Kyle Simpson explained it in the first chapter of You Don’t Know JS Yet.

多范例,动态类型,单线程ECMAScript规范。 您需要知道是什么使JS JS。 凯尔·辛普森(Kyle Simpson)在《您还不知道JS》的第一章中对此进行了解释。

JavaScript引擎如何工作 (How the JavaScript engine works)

To run code, you need an engine to run it. Lydia Hallie explained it well in this post about the JavaScript engine. You’ll realize how typing JavaScript can make it more performant for v8.

要运行代码,您需要一个引擎来运行它。 Lydia Hallie在有关JavaScript引擎的文章中对此进行了很好的解释。 您将了解键入JavaScript如何使它对v8更具性能。

可怕的事件循环 (The dreaded event loop)

Did you know that JavaScript executes synchronously? But then, how can you make API calls and still not block the page? Introducing the event loop and browser APIs. There are two excellent videos on that: In The Loop from Jake Archibald and What the heck is the event loop anyway from Philip Roberts.

您知道JavaScript是同步执行的吗? 但是,然后如何进行API调用却又不阻止页面呢? 介绍事件循环和浏览器API。 关于这一点,有两个很棒的视频:杰克·阿奇博尔德的《循环》和菲利普·罗伯茨的事件循环到底是什么

执行上下文,提升,作用域和关闭 (Execution context, hoisting, scopes, and closures)

You need to know what JavaScript actually does when running a program. For that Tyler Mc Ginnis got your back with an awesome post on execution context, hoisting, scopes and closures.

您需要知道JavaScript在运行程序时实际上在做什么。 为此,Tyler Mc Ginnis撰写了一篇很棒的文章,内容涉及执行上下文,提升,作用域和闭包

强迫 (Coercion)

What actually happens when JavaScript interprets "1" == 1? Hint: coercion. Alexey Samoshkin wrote a guide on JavaScript coercion that's really interesting!

当JavaScript解释为"1" == 1时,实际上会发生什么? 提示:强制。 Alexey Samoshkin撰写了有关JavaScript强制指南,这真的很有趣!

调用,应用和绑定 (This, call, apply and bind)

Ah, this. With a misunderstanding of this, you can often get common errors like Cannot read property 'name' of undefined or greet is not a function in your programs. Tania Rascia broke down these concepts for you in one of her posts: Understanding This, Bind, Call, and Apply in JavaScript.

啊, thisthis有误解,您经常会遇到常见错误,例如Cannot read property 'name' of undefined或在程序中greet is not a function 。 Tania Rascia在她的一篇文章中为您分解了这些概念:“ 了解,在JavaScript中绑定,调用和应用”

承诺和异步/等待 (Promises and async/await)

ES2015 made JavaScript developers’ lives more comfortable by bringing promises which allow you to write simpler asynchronous code. Learn what they mean by reading What is a Promise? from Eric Elliott or JavaScript Promises for Dummies on Scotch.io. You can also watch a great talk from Wes Bos on Async/Await.

ES2015通过带来使您可以编写更简单的异步代码的承诺,使JavaScript开发人员的生活更加舒适。 通过阅读什么是承诺来了解它们的含义 可以从Eric Elliott或Scotch.io上的JavaScript Promises for Dummies中获得。 您还可以在Async / Await上观看Wes Bos的精彩演讲。

模组 (Modules)

What are ECMAScript modules? Common JS? A module bundler? Find the answers in yet another post from Tyler Mc Ginnis on JavaScript Modules. I also highly recommend that you check out this course on Webpack 4 fundamentals from Sean Larkin.

什么是ECMAScript模块? 普通的JS? 模块捆绑器? 在有关JavaScript模块的 Tyler Mc Ginnis的另一篇文章中找到答案。 我还强烈建议您从Sean Larkin 那里学习有关Webpack 4基础的课程

功能编程 (Functional programming)

We already know that JavaScript is a multi-paradigm language. One paradigm supported in JavaScript is functional programming since functions are first-class citizens. Andrea Bertoli made an excellent post on the basics of functional programming. You’ll see the power of composition.

我们已经知道JavaScript是一种多范式语言。 JavaScript支持的一种范例是函数式编程,因为函数是一等公民。 Andrea Bertoli在函数式编程的基础上发表了出色的文章。 您会看到合成的力量。

培训班 (Courses)

There are a lot of resources when it comes to learning JavaScript, and it may be overwhelming. Don’t worry. If you prefer to get a single course, I got your back too:

在学习JavaScript方面有很多资源,而且可能不胜枚举。 不用担心 如果您更喜欢单门课程,我也很支持您:

When you have to learn new concepts, you need to space your learning in time, read or watch different resources, and practice a lot. Using this strategy allows you to truly master a topic. That’s why I recommended various posts and courses. Don’t wait — start to get better at JavaScript!

当您必须学习新概念时,您需要及时安排学习时间,阅读或观看不同的资源并进行大量练习。 使用此策略,您可以真正掌握主题。 这就是为什么我推荐各种职位和课程的原因。 不要等-开始在JavaScript上变得更好!

翻译自: https://medium.com/better-programming/over-20-resources-to-advance-your-javascript-skills-1d5758ca1bf2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值