20241112前端八股文总结

1.介绍项目
2.项目难点
3.promise:promise是异步的一种解决方案、它其实是一个对象,可以获取异步操作,promis属于同步任务,但是promise.then()和promise.catch属于微任务。promise有3个状态:pending(进行中)、resolved(已完成)、rejected(已拒绝),一旦状态改变就不会再变。

4.事件循环:js是单线程的,分为同步和异步任务,同步任务放入栈中立刻执行,异步任务放入任务队列排队执行,同步任务执行完后会反复去任务队列看是否有异步任务,有就放入栈中执行,这个反复的过程就叫事件循环。 异步任务分宏任务和微任务,先执行微任务再执行宏任务微任务async/await,宏任务定时器延时器。

5.vue2、vue3响应式:vue2使用Object.defineProperty数据劫持,递归遍历对象属性添加getter、setter;vue3使用Proxy代理,可以劫持整个对象。

6.computed和watch:computed计算属性,依赖属性改变重新计算computed的值,有缓存;watch侦听器:监听数据变化时都会执行回调,无缓存,可配置第一次是否执行和深度监听。

7.vue的key:key是vnode的唯一id,使得diff操作更准确和快速。diff算法过程先会进行新旧节点的首尾交叉对比,当无法匹配时会用新节点的key和旧节点进行比对,从而找到相应旧节点。

8.闭包:闭包是指一个函数能够访问并操作其父函数作用域中的变量,即使父函数执行完了,避免变量污染、属性方法私有化、保存变量常驻内存。应用场景:节流、防抖、封装库、回调函数、递归。
节流:单位时间内频繁触发只执行一次,类似技能冷却(如下拉加载列表)
防抖:单位时间内频繁触发只执行最后一次,类似游戏回城(如搜索框搜索输入、wps在线保存)
封装库:使用匿名自执行函数,将公共方法挂载在原型上

9.原型和原型链:每个函数的prototype属性叫做原型,用来存放共享的属性和方法,能够继承;每个对象都有_proto_属性,并且指向他的原型;原型也有_proto_,指向原型的原型,一层一层的链式结构叫做原型链。(如person对象->Person.prototype->Object.prototype->null)

10.es6新特性:箭头函数(更简洁的语法、没有自己的this)、扩展运算符、解构赋值、模板字符串、promise、let和const、reduce

11.浏览器输入url并回车发生了什么:第一次访问:输入url->dns域名系统匹配真实ip->建立连接(三次握手)->获取数据渲染页面->四次挥手,第二次访问:读取浏览器缓存,看ip是否过期

12.性能优化:使用Lighthouse工具分析,减少http请求(合并文件精灵图)、减小文件大小(资源压缩使用svg)、启用cdn、gzip、懒加载、ssr服务器端渲染、小程序分包、减少dom操作避免回流(vue的虚拟dom diff算法)、使用缓存

13.webpack和vite:webpack是功能强大的静态模块打包工具,适合大型复杂项目,构建较慢;vite是基于原生es模块的开发工具,适用于中小快速开发项目,构建快。

14.js数据类型:基本数据类型(boolean、number、string、undefined、null、symbol)、引用数据类型(object、array、function)

15.数据类型检测方式:typeof(数组、对象、null都会判断为object)、instanceof(只能通过原型链判断引用数据类型)、constructor(改变创建对象原型就失效)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/914539.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OneRestore: A Universal Restoration Framework for Composite Degradation 论文阅读笔记

这是武汉大学一作单位的一篇发表在ECCV2024上的论文,文章代码开源,文章首页图如下所示,做混合图像干扰去除,还能分别去除,看起来很牛逼。文章是少见的做混合图像干扰去除的,不过可惜只包含了3种degradation…

2.vue编写APP组件

二、编写APP组件 2.1基本语法 1&#xff09;先把src里的默认文件删掉 2&#xff09;创建main.ts和App.vue这两个文件 <!--App.vue--><!-- 组件结构 --> <template><div class"app"><h1>Hello Vue</h1></div> </temp…

工业相机选取

1.相机分类&#xff1a; 1.1 在相机曝光方式中&#xff0c;全局曝光和卷帘曝光是两种主流技术。CCD相机通常采用全局曝光方式&#xff0c;而CMOS相机则可能采用卷帘曝光。 面阵相机与全局曝光关联与区别 关联&#xff1a;面阵相机可以使用全局曝光作为曝光方式&#xff0c;但…

进入未来城:第五周游戏指南

欢迎来到 Alpha 第 4 季第五周&#xff01; 走进霓虹闪烁的未来城街道&#xff0c;这是一座科技至上的赛博朋克大都市。鳞次栉比的摩天大楼熠熠生辉&#xff0c;拥挤的街道下则是阴森恐怖的地下世界。在这里&#xff0c;像激光鹰队长这样的超级战士正在巡逻&#xff0c;而 Ago…

C++ 错题本 MAC环境下 unique_lock try_lock_for函数爆红问题

下方是一个非常简单的&#xff0c;尝试使用unique_lock去尝试加锁的示例代码&#xff0c;在调用try_lock_for函数的时候爆红。这个函数本来就是按照编辑器提示点出来的&#xff0c;不可能没有这个方法 &#xff0c;比较奇怪。 报错如图所示&#xff1a; 运行的时候编译器报错…

华为大咖说 | 浅谈智能运维技术

本文分享自华为云社区&#xff1a;华为大咖说 | 浅谈智能运维技术-云社区-华为云 本文作者&#xff1a;李文轩 &#xff08; 华为智能运维专家 &#xff09; 全文约2695字&#xff0c;阅读约需8分钟 在大数据、人工智能等新兴技术的加持下&#xff0c;智能运维&#xff08;AI…

ollama+springboot ai+vue+elementUI整合

1. 下载安装ollama (1) 官网下载地址&#xff1a;https://github.com/ollama/ollama 这里以window版本为主&#xff0c;下载链接为&#xff1a;https://ollama.com/download/OllamaSetup.exe。 安装完毕后&#xff0c;桌面小图标有一个小图标&#xff0c;表示已安装成功&…

python数据写入excel文件

主要思路&#xff1a;数据 转DataFrame后写入excel文件 一、数据格式为字典形式1 k e &#xff0c; v [‘1’, ‘e’, 0.83, 437, 0.6, 0.8, 0.9, ‘好’] 1、这种方法使用了 from_dict 方法&#xff0c;指定了 orient‘index’ 表示使用字典的键作为行索引&#xff0c;然…

借助 Pause 容器调试 Pod

借助 Pause 容器调试 Pod 在 K8S 中&#xff0c;Pod 是最核心、最基础的资源对象&#xff0c;也是 Kubernetes 中调度最小单元。在介绍 Pause 容器之前需要先说明下 Pod 与容器的关系来理解为什么需要 Pause 容器来帮助调试 1. Pod 与 容器的关系 Pod 是一个抽象的逻辑概念&…

为何数据库推荐将IPv4地址存储为32位整数而非字符串?

目录 一、IPv4地址在数据库中的存储方式&#xff1f; 二、IPv4地址的存储方式比较 &#xff08;一&#xff09;字符串存储 vs 整数存储 &#xff08;二&#xff09;IPv4地址"192.168.1.8"说明 三、数据库推荐32位整数存储方式原理 四、存储方式对系统性能的影响…

独家|京东上线自营秒送,拿出二十年底牌和美团竞争

京东自营秒送开启招商&#xff0c;即时零售也要全托管&#xff1f; 作者|王迟 编辑|杨舟 据「市象」独家获悉&#xff0c;京东将在近期上线自营秒送业务&#xff0c;目前已经开始邀约制招商。「市象」获得的招商资料显示&#xff0c;和5月刚升级上线的京东秒送以POP模式不同&…

观成科技:Vagent注入的内存马加密通信特征分析

概述 vagent是一个使用Java语言开发的内存马注入工具。攻击者在利用vagent注入内存马之后可以利用别的代理工具或是webshell工具连接内存马进行通信。vagent对部分工具的内存马做了一些简单的魔改以达到绕过部分检测设备的目的。 vagent注入的内存马通信特征分析 vagent工具…

新增支持Elasticsearch数据源,支持自定义在线地图风格,DataEase开源BI工具v2.10.2 LTS发布

2024年11月11日&#xff0c;人人可用的开源BI工具DataEase正式发布v2.10.2 LTS版本。 这一版本的功能变动包括&#xff1a;数据源方面&#xff0c;新增了对Elasticsearch数据源的支持&#xff1b;图表方面&#xff0c;对地图类和表格类图表进行了功能增强和优化&#xff0c;增…

Ubuntu24.04安装搜狗输入法详细教程

本章教程,介绍如何在Ubuntu24.04版本操作系统上安装搜狗输入法。 一、下载安装包 搜狗输入法linux版本下载地址:https://shurufa.sogou.com/linux 二、安装步骤 1、更新源 sudo apt update2、安装fcitx输入法框架 sudo apt install fc

vxe-table 3.10+ 进阶高级用法(一),根据业务需求自定义实现筛选功能

vxe-table 是vue中非常强大的表格的&#xff0c;公司项目中复杂的渲染都是用 vxe-table 的&#xff0c;对于用的排序。筛选之类的都能支持&#xff0c;而且也能任意扩展&#xff0c;非常强大。 默认筛选功能 筛选的普通用法就是给对应的列指定参数&#xff1a; filters&#…

一文搞懂 ARM 64 系列: PACISB

1 PAC AMR64提供了PAC(Pointer Authentication Code)机制。 所谓PAC&#xff0c;简单来说就是使用存储在芯片硬件上的「密钥」&#xff0c;一个「上下文」&#xff0c;与「指针地址」进行加密计算&#xff0c;得出一个「签名」&#xff0c;将这个「签名」写入指针的高bit上。 计…

Spark 共享变量:广播变量与累加器解析

Spark 的介绍与搭建&#xff1a;从理论到实践_spark环境搭建-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交&#xff1a;本地与集群模式全解析-CSDN博客 Spark on YARN&#xff1a;Spark集群模式…

基于Matlab 火焰识别技术

课题介绍 森林承担着为人类提供氧气以及回收二氧化碳等废弃气体的作用&#xff0c;森林保护显得尤其重要。但是每年由于火灾引起的事故不计其数&#xff0c;造成重大的损失。如果有一款监测软件&#xff0c;从硬件处获得的图像中监测是否有火焰&#xff0c;从而报警&#xff0…

Group By、Having用法总结(常见踩雷点总结—SQL)

Group By、Having用法总结 目录 Group By、Having用法总结一、 GROUP BY 用法二、 HAVING 用法三、 GROUP BY 和 HAVING 的常见踩雷点3.1 GROUP BY 选择的列必须出现在 SELECT 中&#xff08;&#x1f923;最重要的一点&#xff09;3.2 HAVING 与 WHERE 的区别3.3 GROUP BY 可以…

《JavaEE进阶》----20.<基于Spring图书管理系统①(登录+添加图书)>

PS&#xff1a;关于接口定义 接口定义&#xff0c;通常由服务器提供方来定义。 1.路径&#xff1a;自己定义 2.参数&#xff1a;根据需求考虑&#xff0c;我们这个接口功能完成需要哪些信息。 3.返回结果&#xff1a;考虑我们能为对方提供什么。站在对方角度考虑。 我们使用到的…