zoukankan      html  css  js  c++  java
  • 关于最近前端面试的一些问题

    最近山竹台风来了,在家休息了一天。

    总结梳理了一些知识点

    一:

    http状态码,TCP和UDP的区别,TCP的三次握手和四次挥手

    OSI七层网络模型和TCP/IP四层网络模型,http1.0 http1.1 https http2的知识

    状态码:比较有趣的有101协议升级(websocket,http2),304协商缓存(etag,last-modified),307hsts跳转(http严格传输安全,意思是下一次访问这个站点要用https协议),301永久重定向(例如:http://www.baidu.com到https),302临时重定向(例如未登录的用户点击用户模块会跳转回登录页面)。

    TCP/UDP:一个是面向连接的传输控制协议(需要与对方建立连接,完成一个连接需要经过tcp三次握手),一个面向非连接的用户数据报协议(不用连接,可以直接把数据报发给对方,适用发送小数据,对可靠性不高的传输)。

    TCP三次握手 : SYN(发送端发送一个带有syn标志的数据包给接收端)  SYN/ACK(接收端确认收到信息发送一个带有syn/ack标志的数据包给发送端)  ACK (发送端发送一个ack给接收端,告诉对方已经不要数据了)

    四次挥手: FIN(主动关闭方给被动关闭方发)  ACK(被动关闭方给被动关闭方发)  FIN(被动关闭方给主动关闭方发)  ACK(主动关闭方给被动关闭方发) 

    OSI七层网络模型:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层

    TCP/IP四层网络模型:网络接口层,网间层,传输层,应用层

    http2: 二进制,头部压缩,多路复用,服务端推

    http端口号:80  https:443

    http是基于tcp协议之上

    https是基于ssl/tls协议之上,ssl/tls协议又是在tcp协议之上

    http1.0 http1.1 要理解短轮询和长轮询的区别,

    前者1.0完成一次tcp连接会断开,

    1.1会保持连接,等待有响应数据返回

    二:上周面试的一些题目

    1: position:absolute和float的异同

    相同点:都是脱离文本流

    不同点:position会覆盖到块元素上,不占据文档流空间,float会漂浮在正常块元素上面,但是依然占据正常文档流的文本空间

    2 CSS选择器有哪些,优先级怎么样

    3 GET 和POST区别,HTTP状态码了解哪些?

    4 同步和异步的区别,js实现异步有哪些手段,了解es6的promise和最新的async和await吗

    5 有什么遇到过移动端的css问题,比如css属性失效

    6 移动端有哪些完全实现响应式布局的方案

    7 AJAX的优缺点,怎么编写原生AJAX,有哪些方式实现跨域

    8 H5上传图片怎么实现兼容ios和安卓可以选择拍照或者从相册选图片

    9 作用域链是什么,闭包的原理,怎么防止内存泄漏

    10 面对对象是什么,有哪些方式创建对象,怎么继承对象,有没有写过库,插件和框架,有没有看过jquery源码,vue的源码

    11 你对模块化的认识,平时用到哪些设计模式?

    12 vue,angular,react的优缺点,vue的生命周期?

    13 怎么优化vue的加载?vue-router和vuex使用遇过什么问题,怎么解决的?

    14 怎么深拷贝一个对象,栈和队列的区别,栈和堆的区别?

    15 怎么实现冒泡排序快速排序选择排序,思想原理分别是什么。怎么实现数据去重?

    16 有没有项目用过本地存储localstorage,sessionstorage,它们有哪些方法?

    17 cookie的优缺点和cookie和本地存储的区别?

    18 webpack打包的css怎么兼容低版本的安卓手机?

    19 H5怎么与ios和安卓交互的?有没有掌握一门后台技术比如php,java。java的垃圾回收机制,多线程的理解

    20 构造函数 原型对象 实例有什么关系?

    21 什么是事件流,有哪些事件流,事件模型有哪些,什么是事件循环,怎么理解js是单线程的

    22 ie 怎么阻止事件冒泡和默认事件;js怎么实现模拟事件

    23 怎么解决移动端滚动的卡顿问题 -webkit-overflow-scrolling:touch

    24 有没有了解移动端的触屏事件,你遇到过哪些移动端问题,你是怎么解决的

    25 基于高德地图的开发问题,手滑缩放怎么响应事件获取部分区域的后台数据,具体逻辑是什么,如果现在重新写,你会怎么优化?

    25 对前端工程化的了解(语义化,组件化,模块化,自动化,项目的目录,代码的规范,自动测试,发布,构建工具使用,版本控制工具的使用,git命令了解,linux基本命令),页面性能怎么优化。个人建议看一下张云龙的github

    26 你对前端的价值的了解,未来的职业规划,薪酬问题

    大概以上就是上周面试的问到的问题,面试的几家公司都在往vue和react方向发展

    技术总监的评价是基础扎实,但对vue还不够熟悉,在不断挑战自己的舒服区,自省永远不是坏事

    立一个目标,2018年剩下不到四个月,希望通过自己努力2019年早日突破月薪18k。

  • 相关阅读:
    Linux之文件处理命令
    Linux基础命令
    rip实验
    Linux基础之磁盘分区
    mysql安装
    centos Apache、php、mysql默认安装路径
    You probably tried to upload too large file. Please refer to documentation for ways to workaround this limit.
    Wrong permissions on configuration file, should not be world writable!
    机器会学习么 学习总结
    实验 5 Spark SQL 编程初级实践
  • 原文地址:https://www.cnblogs.com/kevoin/p/9658692.html
Copyright © 2011-2022 走看看