IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 面试题总结 -> 正文阅读

[网络协议]面试题总结

1.浏览器缓存策略,有哪些类型,分别有什么区别?

答:

  1. DNS缓存
  2. memory cache本地缓存
  3. disk缓存(http缓存)HTTP缓存分为强制缓存和协商缓存
    ①DNS缓存:
  4.      DNS域名解析时首先会查找浏览器本身的dns缓存
    
  5.      如果不存在会查找操作系统的hosts文件,
    
  6.      不存在则会查找本地的dns服务器,
    
  7.      不存在则会向根服务器发出请求
    

②memory cache本地缓存
memory cache 是浏览器为了加快读取缓存速度而进行的自身的优化行为,不受开发者控制,也不受 HTTP 协议头的约束。memory cache 注定只能是个“短期存储”。当数据量过大,即使网页不关闭,缓存依然会失效。
③http缓存 [浏览器缓存缓存策略(看完就懂) - 掘金 (juejin.cn)](url)
添加链接描述

2 http状态码有哪些,301和302的区别

301永久重定向
302临时重定向
301表示旧地址A的资源已经被永久地移除了(这个资源不可访问了),搜索引擎在抓取新内容的同时也将旧的网址交换为重定向之后的网址;302表示旧地址A的资源还在(仍然可以访问),这个重定向只是临时地从旧地址A跳转到地址B,搜索引擎会抓取新的内容而保存旧的网址。
3.BFC
https://www.itcast.cn/news/20201016/16152387135.shtml
触发BFC的条件

·body根元素

·设置浮动,不包括none

·设置定位,absoulte或者fixed

·行内块显示模式,inline-block

·设置overflow,即hidden,auto,scroll

·表格单元格,table-cell

·弹性布局,flex
BFC的作用
解决外边距塌陷,垂直塌陷和清除浮动,组织标准流元素被浮动元素覆盖
4.防抖和节流
防抖
函数防抖(debounce):当持续触发事件时,一定时间段内没有再触发事件,事件处理函数才会执行一次,如果设定的时间到来之前,又一次触发了事件,就重新开始延时。

 <div id="content"></div>
  <script>
    var count = 0
    var con = document.querySelector('#content')
    con.addEventListener('mousemove', debounce(add, 300))
    function add() {
      con.innerHTML = count++
    }
    function debounce(fn, delay) {
      let timer = null
      return function () {
        if (timer) { clearTimeout(timer) }

        timer = setTimeout(fn, delay)

      }
    }

  </script>

节流
函数节流(throttle):当持续触发事件时,保证一定时间段内只调用一次事件处理函数。

  <div id="content"></div>
  <script>
    var count = 0
    var con = document.querySelector('#content')
    con.addEventListener('mousemove', throttle(add, 2000))
    function add() {
      con.innerHTML = count++
    }
    function throttle(func, wait) {
      let timeout = null
      return function () {
        if (!timeout) {
          timeout = setTimeout(() => {
            timeout = null
            func()
          }, wait)
        }
      }
    }


  </script>

5垃圾回收机制

引用计数

另一种不太常见的垃圾回收策略是引用计数。引用计数的含义是跟踪记录每个值被引用的次数。当声明了一个变量并将一个引用类型赋值给该变量时,则这个值的引用次数就是1。相反,如果包含对这个值引用的变量又取得了另外一个值,则这个值的引用次数就减1。当这个引用次数变成0时,则说明没有办法再访问这个值了,因而就可以将其所占的内存空间给收回来。这样,垃圾收集器下次再运行时,它就会释放那些引用次数为0的值所占的内存。
标记清除
  这是javascript中最常用的垃圾回收方式。当变量进入执行环境是,就标记这个变量为“进入环境”。从逻辑上讲,永远不能释放进入环境的变量所占用的内存,因为只要执行流进入相应的环境,就可能会用到他们。当变量离开环境时,则将其标记为“离开环境”。

垃圾收集器在运行的时候会给存储在内存中的所有变量都加上标记。然后,它会去掉环境中的变量以及被环境中的变量引用的标记。而在此之后再被加上标记的变量将被视为准备删除的变量,原因是环境中的变量已经无法访问到这些变量了。最后。垃圾收集器完成内存清除工作,销毁那些带标记的值,并回收他们所占用的内存空间。

6.call和apply和bind的区别

1call和apply会调用函数,并且改变其中的this指向
2apply传递的参数必须为数组
3bind不调用函数,值改变函数的this指向

7js事件循环机制

添加链接描述

8杨辉三角

 function yang(n) {
      let arr = new Array(n)
      for (let i = 0; i < arr.length; i++) {
        arr[i] = new Array(i + 1)
      }
      for(let i=0;i<arr.length;i++){
        for(let j=0;j<arr[i].length;j++){
          if(j===0||j===i){
            arr[i][j]=1
          }else{
            arr[i][j]=arr[i-1][j]+arr[i-1][j-1]
          }
        }
      }
      for(let i=0;i<arr.length;i++){
        for(let j=0;j<arr[i].length;j++){
          document.write(arr[i][j] + " ")
        }
        document.write(`<br/>`)
      }
    }
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-30 15:58:44  更:2021-11-30 16:00:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年7日历 -2024/7/6 8:32:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码