• 前端面试题目(二十八)


    遇上十万个为什么的面试官   说一句就要反问为什么呢   为什么会这样呢   崩溃

    1、http get post区别,使用https后get请求一定安全吗

    • GET在浏览器回退时是无害的,而POST会再次提交请求。
    • GET请求只能进行url编码,而POST支持多种编码方式。
    • GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
    • GET请求在URL中传送的参数是有长度限制的,而POST没有。
    • 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
    • GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
    • GET参数通过URL传递,POST放在Request body中

    2、react为啥要使用hooks

    至于为什么引入hook,官方给出的动机是解决长时间使用和维护react过程中常遇到的问题,例如:

    • 难以重用和共享组件中的与状态相关的逻辑
    • 逻辑复杂的组件难以开发与维护,当我们的组件需要处理多个互不相关的 local state 时,每个生命周期函数中可能会包含着各种互不相关的逻辑在里面
    • 类组件中的this增加学习成本,类组件在基于现有工具的优化上存在些许问题
    • 由于业务变动,函数组件不得不改为类组件等等

    在以前,函数组件也被称为无状态的组件,只负责渲染的一些工作

    因此,现在的函数组件也可以是有状态的组件,内部也可以维护自身的状态以及做一些逻辑方面的处理

    3、为啥要使用rem,px不行吗

    4、性能优化如何监测首屏时间,图片加载完的指标是什么,base64,内联外联加载完的指标一样吗

    5、性能优化遇到页面卡顿怎么搞

    6、last-modified是返回的属性,对应的请求属性是什么

    if-modify-since?

    手写两个题

    解析url参数,以对象形式返回

    1.  function parseUrl(url) {
    2. let urlStr = new URL(url).search
    3.         const res = {}
    4. const paramArr = new URLSearchParams(urlStr)
    5.         paramArr.forEach((val,key)=>{
    6.                 res[key] = val
    7.         })
    8.         return res
    9. }

     返回数组中出现次数最多的元素

  • 相关阅读:
    【云原生 • Kubernetes】命令行工具 kubectl 介绍及命令汇总
    【网络编程】网络编程概念 | TCP和UDP的区别 | UDP数据报套接字编程 | Socket
    Python实现Redis缓存MySQL数据并支持数据同步
    Web前端 Promise 入门 【尚硅谷】
    聊聊druid的return行为
    安卓USB模块源码分析(三)- 设备连接断开广播
    MYSQL常用语句
    【一起进大厂】最新Java并发面试题整理
    B058-SpringBoot
    CoDeSys系列-4、基于Ubuntu的codesys运行时扩展包搭建Profinet主从环境
  • 原文地址:https://blog.csdn.net/qq_31248809/article/details/126110911