循环打印红黄绿下面来看一道比较典型的问题,通过这个问题来对比几种异步编程方法:红灯 3s 亮一次,绿灯 1s 亮一次,黄灯 2s 亮一次;如何让三个灯不断交替重复亮灯?三个亮灯函数:function red() { console.log('red'); } function green() { console.log('green' ......
268
0
0
2023-03-12
vuex是什么?怎么使用?哪种功能场景使用它?Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。vuex 就是一个仓库,仓库里放了很多对象。其中 state 就是数据源存放地,对应于一般 vue 对象里面的 data 里面存放的数据是响应式的,vue 组件从 store 读取数据,若是 store 中的数据发生改变,依赖这相数据的组件也会发生更 ......
306
0
0
2023-03-12
1. Vue的基本原理当一个Vue实例创建时,Vue会遍历data中的属性,用 Object.defineProperty(vue3.0使用proxy )将它们转为 getter/setter,并且在内部追踪相关依赖,在属性被访问和修改时通知变化。 每个组件实例都有相应的 watcher 程序实例,它会在组件渲染的过程中把属性记录为依赖,之后当依赖 ......
326
0
0
2023-03-10
目录react性能优化方案什么是 React Context?何为 JSXprops 是什么应该在 React 组件的何处发起 Ajax 请求react 强制刷新使用 React Hooks 好处是啥?Redux内部原理 内部怎么实现dispstch一个函数的何为纯函数(pure function)如何配置 React-Router 实现路由切换在 Reac ......
307
0
0
2023-02-20
目录说一说js继承的方法和优缺点?一、原型链继承二、借用构造函数(经典继承)三、组合继承四、原型式继承五、寄生式继承六、寄生组合式继承说一说js继承的方法和优缺点?要点: 原型链继承、借用构造函数继承、组合继承、原型式继承、寄生式继承、寄生组合式继承、ES6 Class答:一、原型链继承缺点:1.引用类型的属性被所有实例共享2.在创建 Child 的实例时, ......
273
0
0
2023-02-02
❝欲望越大,我们需要的奔跑速度就越快;而筋疲力尽之时,便是我们幸福感滑坡之时 ❞大家好,我是「柒八九」。今天,我们又开辟了一个新的篇幅 --「前端面试」。即是把一些平时常用的概念和工具方法整理和罗列,也算是一种变向的「未雨绸缪」。该系列的文章,大部分都是前面文章的知识点汇总,但是也不乏参考其他优秀文章。不过,大家可以放心,里面的代码和知识点,都有迹可循。好了 ......
340
0
0
2023-01-17
图片懒加载可以给img标签统一自定义属性data-src='default.png',当检测到图片出现在窗口之后再补充src属性,此时才会进行图片资源加载。function lazyload() { const imgs = document.getElementsByTagName('img'); const len = imgs.length ......
315
0
0
2023-01-16
说一说正向代理和反向代理正向代理我们常说的代理也就是指正向代理,正向代理的过程,它隐藏了真实的请求客户端,服务端不知道真实的客户端是谁,客户端请求的服务都被代理服务器代替来请求。反向代理这种代理模式下,它隐藏了真实的服务端,当我们向一个网站发起请求的时候,背后可能有成千上万台服务器为我们服务,具体是哪一台,我们不清楚,我们只需要知道反向代理服务器是谁就行,而 ......
303
0
0
2023-01-16
用正则写一个根据name获取cookie中的值的方法function getCookie(name) { var match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]*)')); if (match) return unescape(match[2]); } 获取页 ......
297
0
0
2023-01-13
与缓存相关的HTTP请求头有哪些强缓存:ExpiresCache-Control协商缓存:Etag、If-None-MatchLast-Modified、If-Modified-Since代码输出结果function foo(something){ this.a = something } var obj1 = { foo: fo ......
302
0
0
2023-01-13
CSS 如何阻塞文档解析?理论上,既然样式表不改变 DOM 树,也就没有必要停下文档的解析等待它们。然而,存在一个问题,JavaScript 脚本执行时可能在文档的解析过程中请求样式信息,如果样式还没有加载和解析,脚本将得到错误的值,显然这将会导致很多问题。所以如果浏览器尚未完成 CSSOM 的下载和构建,而我们却想在此时运行脚本,那么浏览器将延迟 Java ......
354
0
0
2023-01-10
1. JS 有哪些数据类型?根据 JavaScript 中的变量类型传递方式,分为基本数据类型和引用数据类型两大类七种。基本数据类型包括Undefined、Null、Boolean、Number、String、Symbol (ES6新增)六种。引用数据类型只有Object一种,主要包括对象、数组和函数。判断数据类型采用typeof操作符,有两种语法:type ......
276
0
0
2023-01-10
实现ES6的extendsfunction B(name){ this.name = name; }; function A(name,age){ //1.将A的原型指向B Object.setPrototypeOf(A,B); //2.用A的实例作为this调用B,得到继承B之后的实例,这一步相当于调用super Ob ......
303
0
0
2023-01-08
用过pinia吗?有什么优点?1. pinia是什么?在Vue3中,可以使用传统的Vuex来实现状态管理,也可以使用最新的pinia来实现状态管理,我们来看看官网如何解释pinia的:Pinia 是 Vue 的存储库,它允许您跨组件/页面共享状态。 实际上,pinia就是Vuex的升级版,官网也说过,为了尊重原作者,所以取名pinia,而没有取名Vuex,所 ......
291
0
0
2023-01-08
UDP和TCP有什么区别TCP协议在传送数据段的时候要给段标号;UDP协议不TCP协议可靠;UDP协议不可靠TCP协议是面向连接;UDP协议采用无连接TCP协议负载较高,采用虚电路;UDP采用无连接TCP协议的发送方要确认接收方是否收到数据段(3次握手协议)TCP协议采用窗口技术和流控制对浏览器的缓存机制的理解浏览器缓存的全过程:浏览器第一次加载资源,服务器 ......
302
0
0
2023-01-08