您的位置:首页 » 分类: JavaScript » 文章: 前端开发面试时你需要了解的 10 个JavaScript概念

前端开发面试时你需要了解的 10 个JavaScript概念

小编推荐:掘金是一个高质量的技术社区,从 ECMAScript 6 到 Vue.js,性能优化到开源类库,让你不错过前端开发的每一个技术干货。各大应用市场搜索「掘金」即可下载APP,技术干货尽在掌握..

除了应付前端开发岗位的面试,在实际工作和使用 JavaScript 的过程中,你更应该掌握这些基本的概念。

自学 JavaScript

有很多人学习 JavaScript 和 Web 开发,并且希望找到一份工作。通常,自学会使人们对 JavaScript 语言本身的理解在知识盲点。

令人感到惊讶的是制作复杂的网页只需要很少的语言知识。实际上,那些能开发整个网站的人往往对 JavaScript 的基本原理没有很好的把握。

使用基本技能来避免复杂的问题和实现功能是相当容易的。通过 Stack Overflow ,在不理解被复制的代码的情况下,创建一个网站也是十分容易。

面试

问题是,许多技术公司在面试中提问时,目的是检验你对 JavaScript 是否真正理解。当求职者只是对 JavaScript 有粗浅的认识,而不是深刻理解这门语言,面试官会很快清楚是什么情况。

以下是在 Web 开发面试中经常被问到的概念。 当然,我们假设您已经知道诸如循环,函数和回调之类的基础知识。

概念

1、 原始值和引用值(Value vs. Reference) —— 了解如何将对象,数组和函数复制并传递给函数。要知道引用时复制了什么。理解原始值是通过复制值来进行复制和传递的。

2、 作用域(Scope) —— 了解全局作用域,函数作用域和块作级用域之间的区别。了解哪些变量在哪些地方可用。知道 JavaScript 引擎如何执行变量查找。

这里有相关译文:深入理解JavaScript中的作用域和上下文

3、 提升(Hoisting) —— 理解变量和函数声明会被提升到可用作用域的顶部。 理解函数表达式不会被提升。

也可以看看这篇文章:JavaScript 中的 Hoisting (变量提升和函数声明提升)

4、 闭包(Closures) —— 知道一个函数保留,并且可以访问创建它的作用域。知道这些可以让我们做什么,例如数据隐藏、内存化以及动态函数生成。

了解一下作用域和闭包 之间的联系

5、 this —— 知道 this 绑定的规则。知道它的工作机制,知道如何弄清楚在一个函数中它等同于什么,或者说指向什么?并知道为什么它是有用的。

6、 new —— 知道它如何与面向对象编程相关。知道用 new 调用的函数会发生什么。理解如何使用 new 来继承函数 prototype(原型) 属性生成的对象。

7、 apply, call, bind —— 知道这些函数的工作机制。 知道如何使用它们。了解它们对 this 做了什么。

8、 原型和继承(Prototypes & Inheritance) —— 了解 JavaScript 中的继承是通过 [[Prototype]] 链实现的。了解如何通过函数和对象来设置继承,以及 new 是如何帮助我们实现的。知道 __proto__prototype 属性是什么,以及他们的作用。

9、 异步 JS(Asynchronous JS) —— 理解事件循环,理解浏览器是如何处理用户输入、Web 请求和一般事件的。知道如何识别并正确实现异步代码。理解 JavaScript 中异步和单线程分别是怎样的。

10、 高阶函数(Higher Order Functions) —— 理解这些函数是 JavaScript 中的一等公民,以及这意味着什么。 知道从另一个函数返回一个函数是完全合法的。 了解闭包和更高阶函数允许我们使用的技巧。

理解 高阶函数(Higher Order Functions) 在 JavaScript 函数式编程中的应用:

更多资源

如果翁中包含的链接不够说明,建议你自己搜索相关的资源来帮助你学习这些概念。

这里是我已阅读或观看的资源,至少有一些,可以推荐。大家也可以自行搜索相关的译文。

祝你面试好运!如果你还有什么需要补充或者讨论的,欢迎留言。

正文完。下面还有一个推广让最好的人才遇见更好的机会!

互联网行业的年轻人,他们面对着怎样的职业瓶颈、困惑与未来选择?过去,这鲜有人关心。资深的职场人,也多半优先选择熟人去推荐机会。

100offer致力于改变现状,帮互联网行业最好的人才发现更好的机会。使用 100offer.com 或 100offer App ,可以一周内获得中国、美国等数千家优质企业的工作机会。

马上去遇见更好的机会
推广结束

关注WEB前端开发官方公众号

关注国内外最新最好的前端开发技术干货,获取最新前端开发资讯,致力于打造高质量的前端技术分享公众号

发表评论

电子邮件地址不会被公开。 必填项已用*标注