各大厂前端面试题

经过一段忙碌的各大厂的面试,也顺利的拿到了几个offer,总体通过率还是蛮高的。现凭着记忆做了一些面试题目的整理,做个回顾。

1.arr=[6,8,8,7,6,6]  依次输入6 7 8  写几种方法,然后他们的复杂度分别为多少?

 

2.call bind apply 具体用法(1.改变this指向2.继承) 实例  

 

3.组合构造函数  借用构造函数用法:    

https://blog.csdn.net/ddwddw4/article/details/84838592

 

4. 0 'NAN'  undefind  null  ‘1’  怎么判断类型   

(思路可先用type of 或者Object.prototype.toString.call(),instanceof() 等去结合具体情况去判断。)

 

5.vue  v-for :key为什么必须绑定key值,为什么不推荐使用index?

https://blog.csdn.net/ddwddw4/article/details/85220565

 

6.闭包问题:

如用let解决问题,实际原理是什么

 for(let i=0;i<arr.length;i++){

    setTimeout(function(){

         console.log(i)

    })

}

https://www.cnblogs.com/zhuzhenwei918/p/6131345.html

https://blog.csdn.net/ddwddw4/article/details/78676956  闭包问题解析

 

 

7.this 指向问题

function A(){

this.name='asd';

}

var b=new A();  //this 指向哪

https://blog.csdn.net/ddwddw4/article/details/84839165

 

8._proto_与prototype的区别   Array上面有没有_proto_ ?

https://blog.csdn.net/ddwddw4/article/details/85221056

 

9.vue双向数据绑定原理

https://blog.csdn.net/ddwddw4/article/details/84765179

https://blog.csdn.net/ddwddw4/article/details/80975024

 

10.v-model语法糖怎么实现的(v-bind:value + v-on:input)

https://blog.csdn.net/ddwddw4/article/details/84958473

 

11.arr1=[2,3,5] ,arr2=[2,6,8,5,3]  两个数组合并去重排序

12.vue怎么动态更新数据与视图 (1.Vue.set() 2.比如数组的push,pop,shift,unshift,splice等相关方法。3.改变引用)

 

13.localstorage 前端怎么做过期处理?(利用时间戳,两次时间戳相减,得出经过时间,去判断是否要做过期处理)   

一个网站下面的多个二级子网站  怎么去做共同的登录状态管理, 用啥做,如果用cookie的话怎么做?   

本质是 cookie localstorage  sessionStorage的区别。

 

14.flex 的布局使用

 

15.正则 dsajjw@weel/jtml/sksd/dudongbin1   怎么分别取出dudongbin和1

 

16.em,px,rem区别?rem布局是怎么实现的?原理是什么

http://caibaojian.com/web-app-rem.html

 

17.css3写一个三角形

 

18.前端页面优化技巧

https://www.cnblogs.com/MarcoHan/p/5295398.html

 

19.Vue 优化技巧 (组件异步加载,keep-alive缓存,图片懒加载等)

 

20.哪个项目中遇到的难题,怎么解决的?

 

21.Vue 的生命周期 (11个)

 

22.vuex的流程(官网)

 

23.从地址栏输入url到页面展示出来的过程发生了什么?

https://blog.csdn.net/ddwddw4/article/details/84396263

 

24.link与@import的区别

 

25.xhtml与html的区别

 

26.数组的归并 reduce 和用for循环有什么性能上的区别吗 为什么?

 

27.数组迭代方法

 https://blog.csdn.net/ddwddw4/article/details/84647313

 

28.export 与export default的区别

 

29.es6 promise 用法例子手写

https://blog.csdn.net/ddwddw4/article/details/84307598

 

30.Eslint 用过没,手写XX

 

31.为什么有跨越问题,跨越问题解决办法(1.服务器代理 2.CORS  3.图片Ping 4.JSONP  5.iframe等)

 

32.深拷贝

https://blog.csdn.net/ddwddw4/article/details/84306615

 

33.css中百分比问题:

https://blog.csdn.net/ddwddw4/article/details/82962679

 

34.面试题

function Foo() {

    getName = function () { alert (1); };

    return this;

}

Foo.getName = function () { alert (2);};

Foo.prototype.getName = function () { alert (3);};

var getName = function () { alert (4);};

function getName() { alert (5);}

 

//请写出以下输出结果:

Foo.getName();

getName();

Foo().getName();

getName();

new Foo.getName();

new Foo().getName();

new new Foo().getName();

 

详解 https://blog.csdn.net/ddwddw4/article/details/84942240

 

35.文件上传的方式?ajax如何实现上传?

https://blog.csdn.net/ddwddw4/article/details/85115162

 

36.es6的其他用法  (let,const,解构赋值,字符串模板,class promise,扩展运算符等)

37.数组去重方法

 https://blog.csdn.net/ddwddw4/article/details/84401353

 

38.XSS CSRF SQL注入等前端安全问题,怎么解决?

39.其他面试问题参考

 

http://blog.poetries.top/2017/03/12/front-end-interview-summary

https://blog.csdn.net/wdlhao/article/details/79079660

 

40. 在我的博客里面有一些平时遇到问题的总结,大部分问题也做了收录,可以参考。

https://blog.csdn.net/ddwddw4

 

以上关于JS的问题,Javascrpt  高级程序设计(第3版)中都有较为详细的原理解释与说明,可参考。看完这书,js无难题。

 

 

 

 

 

http://blog.poetries.top/2017/03/12/front-end-interview-summary

前端面试题整理

 

https://blog.csdn.net/wdlhao/article/details/79079660

2018最新Web前端经典面试试题及答案

 

https://baijiahao.baidu.com/s?id=1611739455644700149&wfr=spider&for=pc

新鲜出炉的8月前端面试题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值