面试题库
文章平均质量分 96
复习前端知识,准备秋招
ღ故里᭄ꦿ࿐
愿有能力爱自己,有余力爱别人
展开
-
前端面试题:vue响应式原理 Vdom diff
vue的响应式原理,也算是面试中再常见不过的题目了,之前遇见这道题目只会说:利用的是Object.defineProperty进行的数据劫持,监听数据的变化,通知watcher进行的数据更新。总的来说这是没错的,但是只要面试官进一步的问,那一定是满脸的问号。昨天一天也是没有面试机会,所以就研究了一天这个东西,算是搞明白了(自我感觉),今天就把他来写成文章,希望大佬看到哪里不对给出指导,本文可能会有点长。上正文。现在最流行的框架非vue,react莫属,他们流行起来的原因,离不开响应式,因为它在做一些.原创 2020-08-22 16:30:14 · 2124 阅读 · 1 评论 -
前端面试题:跨域的实现
已经不止一次的被问到这个问题了,今天来总结了一下前端跨域的实现方式,虽然有的方式自己在项目中没有用过,但是还是需要了解一下的。首先需要了解一下什么是跨域,跨域就是说在一个域下去请求另一个域下的资源,那什么是另一个域呢?就是说在两个域之间,不管是协议,域名甚至端口,只要有一个不一样,就属于不同的域,不同的域之间去请求数据,这就是跨域。其实我们通常所说的跨域是狭义的,是由浏览器同源策略限制的一类请求场景。什么是同源策略呢,同源策略/SOP(Same origin policy)是一种约定,由Nets原创 2020-08-19 18:23:51 · 771 阅读 · 0 评论 -
前端面试题:继承的实现
这个是让我崩溃的那个面试题,不是说这个题有多难,而是说自己粗心吧,只是简单的看了实现继承的方式有原型继承,构造函数继承,组合继承,class继承,但是怎么实现的都不知道。昨天面试完总结了一下,索性就把它写成文章,分享加自我回顾。1、原型链继承首先说的继承就是原型链的继承,因为在问我继承前先问了原型和原型链,原型链的集成有什么特点呢,就是子类的prototype指向父类的一个实例。这样的话子类没有的属性方法会在他的原型中去找到,就是说子类的实例的__proto__会指向父类的实例,这个时候就可以拿到父原创 2020-08-18 14:58:28 · 1269 阅读 · 0 评论 -
前端面试题:DOM和CSSDOM树渲染过程
感觉自己复习的已经差不多了,只是缺少面试机会,然而昨天突然的京东的电话,貌似让我直接丢掉了一个进大厂的机会,死在了最基础的问题,说实话自己还是没有完全复习好原创 2020-08-18 11:19:10 · 2468 阅读 · 4 评论 -
前端面试题:几种排序方法(JS版)
相对于后端的朋友来说,前端的一些面试题会出一些算法题,但是更多的来说是一些简单的算法题,比如说数组的排序,反转二叉树,爬楼梯的动态规划等简单问题,今天整理了一下排序的方法。1、冒泡排序这个应该说是最常用的排序方式了,实现的方法及就是两层循环,逐个的对比,以从小到大排序为例,如果遇见后边比前边元素小的情况下,交换在数组中的位置。function Bubbling(arr){ for(var i = 0 ; i < arr.length ; i++){ for(var原创 2020-08-11 22:45:11 · 2072 阅读 · 1 评论 -
前端面试题:谈谈This指向
除了那个闭包的输出问题,另一个让人头疼的,非This的指向问题莫属了,this有时候真的是把人搞得蒙蒙的,但是究竟如何this的指向呢,今天上午也是探索了一番。首先要说的是,this的指向在函数定义的时候是确定不了的,只有当函数执行的时候,才知道this到底指向谁,实际上this最终的指向是那个调用它的对象。举个例子:function fn(){ console.log(this);}当面试官给了这么一个函数去问this的指向的时候,虽然平时一些面试问题说不知道很减分,但是这个问原创 2020-07-31 15:56:33 · 967 阅读 · 0 评论 -
前端面试题:闭包
前段时间一直在投一些中小型公司吧,感觉好久都收不到反馈,也不知道是被淘汰了还是没出结果呢,最近开始投一些大一点的公司准备尝试一下,就在昨天接到面试电话的时候,接受到了滴滴的毒打。跟一些面试不一样的是不只是一些基础的基本概念吧,比如说什么是原型和原型链,说一下继承,讲一下this指向之类的。更多的是为什么要这样用,手写算法,预测输出结果之类的面试题。印象最深刻的应该就是那道关于闭包的题目了吧,是预测一个程序的输出结果,当时看的我是晕头转向,大厂的面试也是招架不住,真的是把我给面到自闭,感觉自己啥也不是,估原创 2020-07-30 22:38:53 · 30442 阅读 · 20 评论 -
前端面试题:JS的事件委托-事件的捕获与冒泡
说一下事件委托,或者对事件代理的理解。算是很常见的面试题了,应该说我遇见很多次了。刚开始遇见的时候发现自己不太懂,应该说之前自己用过,但是不知道他叫这个名字,后来也是总结面试题,去搜索了解了一下下,现在可以说是真正的搞懂了吧,今天把它分享出来,方便以后查看。那什么叫事件委托呢?它还有一个名字叫事件代理,JavaScript高级程序设计(红宝书)上讲:事件委托就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。要搞懂这个概念还得从事件冒泡开始,那什么是事件冒泡呢?事件捕获(even原创 2020-07-26 22:51:02 · 797 阅读 · 1 评论 -
前端面试题:set和map
有时候会被问到set和map的区别,下面我总结了一下set和map的特点和区别。以及他们在一些算法题中的妙用。MapMap是一组键值对的结构,具有极快的查找速度。借用廖雪峰老师的例子,假设要根据同学的名字查找对应的成绩,如果用Array实现,需要两个Array:const names = ['Michael', 'Bob', 'Tracy'];const scores = [95, 75, 85];给定一个名字,要查找对应的成绩,就先要在names中找到对应的位置,再从scores取原创 2020-07-26 19:00:01 · 1382 阅读 · 0 评论 -
前端面试题:手写call,apply和bind
前段时间一朋友面试,被要求手写call,apply和bind,发现自己也不会写,所以就私底下去看了一下这方面的东西,后来发现这个还是挺容易实现的,现在也是分享出来,一方面方便自己查看复习,另一方面希望可以给需要的朋友一点帮助。正式开始之前也是先去了解一下call,apply,bind。其实呢这三兄弟都是为了改变函数的上下文而存在的,或者可以简单点说就是用来改变this指向的。但是呢这三兄弟的用法还是有区别的。1、apply和call会让当前函数立即执行,而bind会返回一个函数,后续需要的时候再调用原创 2020-07-26 11:20:25 · 741 阅读 · 0 评论 -
前端面试题:JS中的原型和原型链
JS的原型和原型链算是前端面试题的热门题目了,也是参加了几场面试,感觉好多次都被问到对原型和原型链的理解,所以今天也是索性把他给整理出来,一方面方便自己以后复习查看,另一方面也是给大家分享一下我对原型和原型链的理解。ES6之前中并没有引入类(class)的概念,JavaScript并非通过类而是直接通过构造函数来创建实例。什么是原型每一个javascript对象(除null外)创建的时候,就会与之关联另一个对象,这个对象就是我们所说的原型,每一个对象都会从原型中“继承”属性。这么说可能会有点原创 2020-07-24 10:48:24 · 7385 阅读 · 2 评论