摘要:自我学习目前有成千上万的年轻人在学习和开发,希望获得一份工作。知道的绑定规则。知道和原型属性是什么以及它们的作用。高阶函数了解函数是中的一级对象,这意味着什么知道从另一个函数返回函数是完全合法的。了解闭包和高阶函数允许我们使用的情况。
翻译原文出处:10 JavaScript concepts you need to know for interviews
之前不是闹得沸沸扬扬的大漠穷秋文章《为什么只会Vue的都是前端小白?》;甚至大多数回头看了,也就会jQuery和Vue这两个库;也就大部分在运用着这两个库。我这里不是吐槽和开骂什么的;在之前jQuery年代,很多面试官都会问除了用jQuery来实现,能不能改写原生JavaScript来处理。也大部分人在看jQuery源码,甚至穷出不尽的底层库。
自我学习目前有成千上万的年轻人在学习JavaScript和Web开发,希望获得一份工作。通常,自我学习的年轻人对JavaScript语言本身不够深入了解,在这方面留下了一片空白。
实际上令人惊讶的是,只需要了解非常小的一部分语言就可以来制作复杂的网页。在自己的网站上创建网站的人往往不太了解JavaScript的基本原理。大多数年轻人基本都是通过Bootstrap、jQuery及插件、Backbone或Angular等库和框架直接就搞定,而且还能构建复杂应用。
使用基本技能来避免复杂的主题和实现功能是相当容易的。在不理解被复制的代码的情况下,通过依赖Stack Overflow、github等网站放出的demo,甚至一些建站网站来创建自己的网站是比较轻松的。
如果您想要掌握更多的JavaScript面试相关资讯,请查看“ 提升你的JS:中级JavaScript的权威指南”
面试那么问题来了,测试您对JavaScript深浅理解的问题,正是许多科技公司在面试中所要求的。当一个求职者只是刚好能通过面试,但如果不够深入了解该语言的本质,这是很槽糕的。
以下是Web开发中常见的概念需要重要的,前提是你已经了解了循环、函数和回调等基础知识。
概念1、值和引用 — 了解对象、数组和函数是通过引用进行复制和传递的;了解原始元素是按值复制和传递的。
2、作用域 — 了解全局作用域,函数作用域和块作用域之间的差异。了解哪些变量在哪里可以用。了解JavaScript引擎如何执行变量查找。新出的ES6语法中申明变量关键字let、const对变量作用域的影响。
3、变量提升 — 了解变量和函数声明被提升到可用范围的顶部;了解函数表达式没有提升。
4、闭包 — 知道闭包是指可以访问其他函数作用域内变量的函数。知道这样做可以使我们做什么,例如创建私有变量,动态函数生成等。
5、this — 知道this的绑定规则。知道它是如何工作的,知道如何找出它在函数中与之相等的,并且知道为什么它是有用的。
6、new — 知道new如何与面向对象编程有关,知道使用new调用的函数会发生什么,通过函数的prototype属性了解如何使用new继承生成的对象。
7、apply,call,bind — 知道这几个函数如何工作的,知道如何使用它们,知道它们做了什么。
8、原型和继承 — 了解JavaScript中的继承通过prototype链进行工作,了解如何通过函数和对象设置继承,以及new函数帮我们来实现它。知道__proto__和原型属性是什么以及它们的作用。
9、异步JS — 了解事件循环。了解浏览器如何处理用户输入,Web请求和一般事件;知道如何识别并正确实现异步代码。了解JavaScript是异步单线程的。
10、高阶函数 — 了解函数是JavaScript中的一级对象,这意味着什么;知道从另一个函数返回函数是完全合法的。了解闭包和高阶函数允许我们使用的情况。
如果上面的知识点包含的链接还不够,那么你可以上其它网站找资源,可以帮助您学习这些概念。
我个人创建了 提升你的JS:中级JavaScript的权威指南,以帮助开发者提高他们的知识;它涵盖了所有这些概念和更多。
这里是我已经阅读或看过的资源,至少有一些可以推荐。
You Don’t Know JS
JavaScript is Sexy
javascript.com
Frontend Masters
Eloquent JavaScript
Good luck for your interviews!!!!(这句你懂得)
如果你发现这很有用,就请您点个赞,转发给其他人也看到它(这是博主原话)。
随时查看我最近的一些写的文章:
提升你的JS:中级JavaScript的权威指南
我从参加一个编码开机画面中学到的东西,并实现了一个
反应生态系统设置 - 分步演练
参考你们认为学习JavaScript难点在那里?
10个JavaScript难点
你有必要知道的 25 个 JavaScript 面试题
谈谈javascript语法里一些难点问题(一)
谈谈javascript语法里一些难点问题(二)
javascript技术难点(三)之this、new、apply和call详解
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/88348.html
摘要:到底什么是闭包这个问题在面试是时候经常都会被问,很多小白一听就懵逼了,不知道如何回答好。上面这么说闭包是一种特殊的对象。闭包的注意事项通常,函数的作用域及其所有变量都会在函数执行结束后被销毁。从而使用闭包模块化代码,减少全局变量的污染。 闭包,有人说它是一种设计理念,有人说所有的函数都是闭包。到底什么是闭包?这个问题在面试是时候经常都会被问,很多小白一听就懵逼了,不知道如何回答好。这个...
摘要:在创业初期,你招来的工程师必须是能够独当一面的大神队友。要评估一个应聘者的真实水准,最佳方式就是结对编程。用微博的抓取消息并显示在时间线上,就是个很好的考察应聘者的面试项目。不过结对编程再好使,也没办法让你完全了解一个应聘者。 原文链接:10 Interview Questions Every JavaScript Developer Should Know 对大部分公司来说,招聘技...
摘要:函数式编程前端掘金引言面向对象编程一直以来都是中的主导范式。函数式编程是一种强调减少对程序外部状态产生改变的方式。 JavaScript 函数式编程 - 前端 - 掘金引言 面向对象编程一直以来都是JavaScript中的主导范式。JavaScript作为一门多范式编程语言,然而,近几年,函数式编程越来越多得受到开发者的青睐。函数式编程是一种强调减少对程序外部状态产生改变的方式。因此,...
摘要:避免脆弱的基类问题。红牌警告没有提到上述任何问题。单向数据流意味着模型是单一的事实来源。单向数据流是确定性的,而双向绑定可能导致更难以遵循和理解的副作用。原文地址 1. 你能说出两种对 JavaScript 应用开发者而言的编程范式吗? 希望听到: 2. 什么是函数编程? 希望听到: 3. 类继承和原型继承的不同? 希望听到 4. 函数式编程和面向对象编程的优缺点? ...
阅读 2860·2021-10-14 09:50
阅读 1217·2021-10-08 10:21
阅读 3645·2021-10-08 10:16
阅读 3062·2021-09-27 14:02
阅读 3135·2021-09-23 11:21
阅读 2108·2021-09-07 10:17
阅读 406·2019-08-30 14:00
阅读 2105·2019-08-29 17:26