【无标题】 您所在的位置:网站首页 labview难不难学 【无标题】

【无标题】

2023-01-06 00:57| 来源: 网络整理| 查看: 265

文章目录 1. Vue组件通信?2.react中props和state相同点和不同点?3.CDN的特点及意义?4.什么是闭包,应用场景是什么?1.什么是闭包?2.应用场景 5. 介绍一下你对浏览器内核的理解?6. 如果需要手动写动画,你认为最小时间间隔是多久,为什么?7. 说说你对webSocket的理解?8.说说你对koa中洋葱模型的理解?1.我们先要了解什么是koa2.什么是洋葱模型。3.为什么需要洋葱模型? 9.说说你对@reduxjs/toolkit的理解?和react-redux有什么区别?1.reduxjs/toolkit理解1.reduxjs/toolkit的使用? 2.区别?

1. Vue组件通信?

组件间通信的分类可以分成以下 父子组件之间的通信 兄弟组件之间的通信 祖孙与后代组件之间的通信 非关系组件间之间的通信

关系图: 在这里插入图片描述

2.react中props和state相同点和不同点?

相同点: 不管是props还是state的改变,都会引发render的重新渲染。 都能由自身组件的相应初始化函数设定初始值。

区别: props是指组件间传递的一种方式,props自然也可以传递state。由于React的数据流是自上而下的,所以是从父组件向子组件进行传递;另外组件内部的this.props属性是只读的不可修改!

state是组件内部的状态(数据),不能够直接修改,必须要通过setState来改变值的状态,从而达到更新组件内部数据的作用。

3.CDN的特点及意义?

1.本地缓存加速:提高了企业网站(尤其是包含大量图片和静态页面的网站)的访问速度,大大提高了上述网站的稳定性。 2.镜像服务:消除了不同运营商之间互联瓶颈带来的影响,实现了跨运营商的网络加速,保证了不同网络的用户都能获得良好的接入质量 3.远程加速:远程访问用户根据DNS负载均衡技术智能自动选择缓存服务器,选择最快的缓存服务器加速远程访问。 4.带宽优化自动生成服务器的远程镜像缓存服务器。远程用户访问时,可以从缓存服务器读取数据,减少远程访问的带宽,分担网络流量,减轻原WEB服务器的负载。 5.集群抗攻击:广泛分布的CDN 节点加上节点间的智能几余机制,可以有效防止黑客入侵,降低各种D.D.o.S攻击对网站的影响,同时保证更好的服务质量。

4.什么是闭包,应用场景是什么? 1.什么是闭包?

闭包就是一个函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起(或者说函数被引用包围),这样的组合就是闭包(closure) 简单来说:闭包就是函数嵌套函数,内部函数可以访问外部函数的参数和值 在js中,每当创建一个函数,闭包就会在函数创建的同时被创建出来,作为函数内部与外部连接起来的一座桥梁

2.应用场景

创建私有变量 延长变量的生命周期 倒计时,延迟调用,回调等闭包的应用,核心思想还是创建私有变量和延长变量的生命周期 一般函数的词法环境在函数返回之后就被销毁了,但是闭包会保存对创建时所在词法环境的引用,即使创建时所在的执行上下文被销毁,但创建时的词法环境仍然存在,以达到延长变量生命周期的目的 注意事项:如果不是某些特定的任务需要适用闭包,在其他函数中创建函数是不明智的,因为闭包在处理速度和内存消耗方面对脚本性能具有负面影响

5. 介绍一下你对浏览器内核的理解?

浏览器的内核分为两个部分渲染引擎和JS 引擎

JS 引擎 是解析 Javascript 语言,执行 javascript语言来实现网页的动态效果。

渲染引擎 它负责取得网页的内容、整理讯息,以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。浏览器要渲染出网页给用户看,必须加载html编码和js脚本,渲染引擎渲染页面的UI和js执行引擎操作内存,就是浏览器的的重要组成“内核”

不同的浏览器厂商 使用的不同的内核,内核的程序代码量大,很难实现,所以只有规模大的厂商才有属于自己的内核 ,以下五个浏览器就有属于自己的内核:   1、IE浏览器:Trident内核,也是俗称的IE内核;   2、Chrome浏览器:统称为Chromium内核或Chrome内核,以前是Webkit内核,现在是Blink内核;   3、Firefox浏览器:Gecko内核,俗称Firefox内核;   4、Safari浏览器:Webkit内核;   5、Opera浏览器:最初是自己的Presto内核,后来是Webkit,现在是Blink内核;

6. 如果需要手动写动画,你认为最小时间间隔是多久,为什么?

多数显示器默认频率是60Hz,即1秒刷新60次,所以理论上最小间隔为1/60*1000ms = 16.7ms

7. 说说你对webSocket的理解?

点击跳转

8.说说你对koa中洋葱模型的理解? 1.我们先要了解什么是koa

Koa是一个精简的node框架,被认为是第二代Node框架,其最大的特点就是独特的中间件流程控制,是一个典型的洋葱模型,它的核心工作包括下面两个方面:

将node原生的req和res封装成为一个context对象。 基于async/await的中间件洋葱模型机制。

2.什么是洋葱模型。

Koa的洋葱模型是以next()函数为分割点,先由外到内执行Request的逻辑,然后再由内到外执行Response的逻辑,这里的request的逻辑,我们可以理解为是next之前的内容,response的逻辑是next函数之后的内容,也可以说每一个中间件都有两次处理时机。洋葱模型的核心原理主要是借助compose方法

3.为什么需要洋葱模型?

因为很多时候,在一个app里面有很多中间件,有些中间件需要依赖其他中间件的结果,用葱模型可以保证执行顺序,如果没有洋葱模型,执行顺序可能出乎我们的预期

9.说说你对@reduxjs/toolkit的理解?和react-redux有什么区别? 1.reduxjs/toolkit理解

由于redux的各种规范与插件异常繁琐,所以官方推出了redux-toolkit这个库来简化redux的使用

1.reduxjs/toolkit的使用?

一般我们用configureStore来创建一个状态管理器 其中reducer后面可以跟一个对象,对象中包含的是通过createSlice创建reducer,他会被redux的combineReducer一起添加到跟容器中 counterSlice.js:主要是定义状态和修改状态的方法 1.在createSlice中,我们没必要返回一个新的state,我们只需要改变其中的属性就可以函数返回一个对象,对象中含有actions和reducer属性 2.创建切片需要name属性来标识切片 3.需要初始状态值 4.需要一个或多个reducers函数来定义更新状态的行为

在组件中,我们最常用的两个api是useSelector, useDispatch 他是react-redux的方法 第一个方法用来取出状态,第二个方法用来取出修改状态的行为 组件中的异步 redux-toolkit 已经支持异步,其内部还有thunk插件,他是一个高级函数

2.区别?

react-redux 是的官方 React UI 绑定层,允许您的 React 组件从 Redux 存储中读取数据,并将操作分派到存储以更新状态。 @reduxjs/toolkit 是对 Redux 的二次封装,开箱即用可的一个高效的 Redux 开发工具集,使得创建store、更新store



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有