zoukankan      html  css  js  c++  java
  • 面试题

    1.二叉树两节点求公共父节点

    2.给定m*n数组,如果数组中有个元素为0,则对应行列值设为0,返回最终的数组

    3.js写出斐波那契数列(我用的递归,面试的时候问了,递归多次,是不是有重复计算,重复计算怎么办?)

    4.浏览器事件循环的题,写出执行顺序和原因

    5.写一个函数,用.then执行(记不清了)

    6.写出一个简单的闭包

    7.mouseenter,mouseover的区别

    8.display:none,和visibility:hidden的区别

    9.bind函数

    10.一个任务有req1,req2,req3,req4四个请求,写个函数,在req1,req2,req3全部响应后执行task1,req4请求完后执行task2。用fetch请求

     

    面试题

    1.二叉树遍历

    2.不用递归实现斐波那契,斐波那契多次重复,怎么优化

    3.你了解的设计模式有哪些,如果你自己写一个订阅发布模式怎么写

    4.react生命周期,hoc和hook

    5.前端工程化

     

    1.url输入浏览器发生了什么

    2.浏览器的事件循环,nodejs的事件循环

    3.深拷贝和浅拷贝,怎么去深拷贝?什么时候用?

    4.变量的类型有哪些?怎么去判断类型?typeof判断类型有什么缺点

    5.diff算法,diff算法快还是原始js快

    6.redux你们是直接用还是用的第三方?有什么优点?

    7.es6你常用哪些?map为什么要设置key,为什么最好不用index

    8.var,let,const有什么区别

    9.基本类型和引用类型的区别

    10.react fiber有了解吗?

    11.箭头函数

    12.0.1+0.2不等于0.3你知道吗

     

    12.说说你觉得做的比较好的项目

    13.说下websocket

     

    笔试题:

    14.至少使用三种方式判断是否为数组?

    var a = []; 
    // 1.基于instanceof 
    a instanceof Array; 
    // 2.基于constructor 
    a.constructor === Array; 
    // 3.基于Object.prototype.isPrototypeOf 
    Array.prototype.isPrototypeOf(a); 
    // 4.基于getPrototypeOf 
    Object.getPrototypeOf(a) === Array.prototype; 
    // 5.基于Object.prototype.toString 
    Object.prototype.toString.apply(a) === '[object Array]';

    15.什么是闭包?为什么要使用闭包,怎样实现一个闭包?

    16.如何实现(5).add(3).minus(2)功能,使其输出结果为6?

    17.什么是节流?什么是防抖?如何实现节流和防抖函数?

    18.请简要实现一个“发布-订阅”模式?

    19.如何使用react hook模拟componentDidMount?

    20.react中的受控组件和非受控组件有什么区别?

      受控组件是通过class组件中的state来控制,如在input输入时控制输入的内容,通过onchange的setState来控制

      非受控组件是通过ref来控制真实的dom

    21.react-router里的<link>标签和<a>标签有什么区别?

      a标签在点击后路由更改,但是在视觉上会闪烁,然后再渲染,体现为【消失】-【渲染】

      link标签在点击后同样路由跳转,但是视觉上不会闪烁,而是直接渲染。

      react-router:只更新变化的部分,从而减少dom的性能消耗

    22.input标签如何处理中文输入?

    23.react的diff算法是如何运作的,请简要说明?

    24.addEventListener的第三个参数

    25.BFC

    26.伪元素和伪类区别

    27.性能优化

    28.浏览器的缓存策略(no-cache)

    29.redux数据流转图

     

    1.react的context更新shouldComponentUpdate返回false而子组件不更新

    2.webpack的chunkHash,hash有什么区别?

    3.组件为什么要设置的key值?

      用户列表中李四和王五使用的是同一个key值,用户列表只有张三和李四两个用户,王五并没有展示处理,主要是因为react根据key认为李四和王五是同一个组件,导致第一个被渲染,后续的会被丢弃掉。这里的react设置key并不是和虚拟dom的diff算法相同。

    4.虚拟dom。

      就是一个普通的 JavaScript 对象,包含了 tag、props、children 三个属性。通过React.createElement()来将这个对象创建成dom

     浏览器内核:

      Trident ——ie,360,猎豹

      Gecko——Mozilla FireFox

      Webkit——safari,chrome,360(分版本)

    大屏视图,设定自定字体/组件的大小后,对于不同的屏幕大小是如何实现自适应的?

      使用echarts组件,由于全屏放大后,通过插件element-resize-detector可以resize组件的宽高在视图的放大或者全屏的时候,是使用transform: scale的

    HTTP

      http1.0只能支持客户端请求,服务端响应,断开连接1.1实现了强连接的功能,在一段时间内可以进行多个请求的功能,如果没有请求就关闭连接。

      缺点:

        1.多个请求都有回包,但是不能判断是哪个请求的返回值;

        2.服务器不能主动推数据

      2.0实现了服务端主动推数据,并定义了帧和流的概念,将回包进行标记,解决了线头阻塞的问题

  • 相关阅读:
    训练总结
    图论--最短路--SPFA模板(能过题,真没错的模板)
    图论--最短路-- Dijkstra模板(目前见到的最好用的)
    The 2019 Asia Nanchang First Round Online Programming Contest B Fire-Fighting Hero(阅读理解)
    关于RMQ问题的四种解法
    The Preliminary Contest for ICPC Asia Xuzhou 2019 徐州网络赛 K题 center
    The Preliminary Contest for ICPC Asia Xuzhou 2019 徐州网络赛 XKC's basketball team
    The Preliminary Contest for ICPC Asia Xuzhou 2019 徐州网络赛 D Carneginon
    ZOJ 3607 Lazier Salesgirl (枚举)
    ZOJ 3605 Find the Marble(dp)
  • 原文地址:https://www.cnblogs.com/zhouyu0001/p/14319499.html
Copyright © 2011-2022 走看看