网站大量收购闲置独家精品文档,联系QQ:2885784924

20道前端高频手写面试题(1).pdf

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

20道前端⾼频⼿写⾯试题

20道前端⾼频⼿写⾯试题

1.防抖节流

2.2.⼀个正则题

3.不使⽤a标签,如何实现a标签的功能

4.不使⽤循环API来删除数组中指定位置的元素(如:删除第三位)写越多越好

5.深拷⻉

6.⼿写callbindapply

7.⼿写实现继承

8.⼿写new操作符

9.js执⾏机制说出结果并说出why

10.如何拦截全局Promisereject,但并没有设定reject处理器时候的错误

11.⼿写实现sleep

12.实现add(1)(2)=3

13.两个数组中完全独⽴的数据

14.判断完全平⽅数

15.函数执⾏说出结果并说出why

16.原型调⽤⾯试题说出结果并说出why

17.数组分组改成减法运算

18.⼿写数组的flat

19.数组转为tree

20.合并数组并排序去重

题⽬

1.防抖节流

这也是⼀个经典题⽬了,⾸先要知道什么是防抖,什么是节流。

•防抖:在⼀段时间内,事件只会最后触发⼀次。

•节流:事件,按照⼀段时间的间隔来进⾏触发。

•实在不懂的话,可以去这个⼤佬的Demo地址玩玩防抖节流DEMO

1//防抖

2funtiondeboune(fn){

3lettimeout=null;

4returnfuntion(){

5//如果事件再次触发就清除定时器,重新计时

6learTimeout(timeout);

7timeout=setTimeout(()={

8fn.apply(this,arguments);

9},500);

10};

11}

12

13//节流

14funtionthrottle(fn){

15letflag=null;//通过闭包保存⼀个标记

16returnfuntion(){

17if(flag)return;//当定时器没有执⾏的时候标记永远是null

18flag=setTimeout(()={

19fn.apply(this,arguments);

20//最后在setTimeout执⾏完毕后再把标记设置为null(关键)

21//表⽰可以执⾏下⼀次循环了。

22flag=null;

23},500);

24};

25}

26

这道题主要还是考查对防抖节流的理解吧,千万别记反了!

2.2.⼀个正则题

要求写出区号+8位数字,或者区号+特殊号码:10010/110,中间⽤短横线隔开的正则验证。区号就

是三位数字开头。

例如010

1letreg=/^\d{3}-(\d{8}|10010|110)/g

这个⽐较简单,熟悉正则的基本⽤法就可以做出来了。

3.不使⽤a标签,如何实现a标签的功能

1//通过window.open和loation.href⽅法其实就可以实现。

2//分别对应了a标签的blank和self属性

4.不使⽤循环API来删除数组中指定位置的元素(如:删除第三位)写越多越好

这个题的意思就是,不能循环的API(如forfilter之类的)。

1

2vararr=[1,2,3,4,5,6,7,8,9,10]

3

4//⽅法⼀:splie操作数组会改变原数组

5arr.splie(2,1)

6

7

8//⽅法⼆:slie截取选中元素返回新数组不改变原数

您可能关注的文档

文档评论(0)

187****9978 + 关注
实名认证
内容提供者

这个人很懒,什么都没有留下

1亿VIP精品文档

相关文档