自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(477)
  • 收藏
  • 关注

原创 v-deep 打破作用域隔离的原理

vue 使用了一种叫做 scoped css 的技术来隔离组件的样式,确保他们不会泄漏到其他组件中,每个 Vue 组件的样式只在该组件的作用域内生效,不会影响到其他组件,而 v-deep 可以打破这样的样式隔离。v-deep 的原理是,vue 渲染是移除这些选择器,从而使得被选中的样式能够影响到子组件内部的元素,这样以来,父组件就可以通过 v-deep 选择器修改子组件的样式,即时他们被包裹到作用域样式中。选择器,父组件可以选择子组件中的元素,并修改它们的样式,即使子组件的样式已经被作用域样式所隔离。

2024-04-17 20:38:37 326

原创 scss 和css 的区别 scss变量和css变量的区别

【代码】scss变量和css变量的区别。

2024-04-17 20:01:10 266

原创 ts 中的keyof 和typeof

作用:返回类型:使用场景:

2024-04-17 18:41:43 126

原创 函数式编程和面向对象编程的区别

函数式编程(Functional Programming)和面向对象编程(Object-Oriented Programming,OOP)是两种不同的编程范式,它们有着不同的思想、理念和方式来组织和实现代码。总的来说,函数式编程和面向对象编程是两种不同的编程范式,每种范式都有自己的优缺点和适用场景。选择使用哪种范式取决于项目的需求、团队的偏好以及语言和工具的支持程度。

2024-04-17 17:59:21 232

原创 浏览器不同标签页通信方法

localStorage sessionStorage【页面跳转】 cookie IndexedDB BroadcastChannel sharedWorker postMessage

2024-04-17 17:38:22 82

原创 websocket 和 eventsource 的区别和应用

先从语法方面说,再从特性方面说,再说应用场景。

2024-04-17 14:31:43 401

原创 有且仅有的10个常见的排序算法,东西不多,怎么就背不下来呢

就这么跟你说吧,面试中肯定会出排序算法的算法题,你只需要背下来代码+背下来他们的时间复杂度和空间复杂度就能蒙混过关。不管你是前端还是后端,关于排序的算法有且仅有这 10个,如果你用心了,怎么会记不住呢。看完这篇文章你还没记住,就说明你是笨蛋。好吧,最最坏的情况下,也需要记住这个8【冒泡、选择、插入、希尔、归并、快速、桶、堆】

2024-04-17 03:37:12 814

原创 前端错误监控的方法有哪些

使用 process.on('uncaughtException')事件,在主进程发生未捕获的异常时触发。strong-agent: 监视和重启 node.js 应用程序的工具,提供了监控主进程错误的功能。PM2: 用于管理 node.js 应用程序的进程管理器,提供了监控主进程错误的功能。前端错误监控是指通过各种手段收集、分析和处理前端应用运行中发生的错误。常用的前端错误监控的方法有。node 的主进程发生错误。使用 http 请求。

2024-04-16 21:39:31 510

原创 使用 js 代码生成随机化,选取一个范围内的随机数

说到随机数,肯定会想到使用Math.random 但是有几点需要注意。常用的是两个数之间 的整数随机数,要求包含两个边界值。具体请参考官方文档,关于。

2024-04-14 18:14:58 124

原创 h5增加的属性、标签和api

【代码】h5增加的属性、标签和api。

2024-04-14 16:50:40 344

原创 vue 面试题目总结篇,考前必看

一、原理1.1 双向绑定原理1.2 vue2 和 vue3 的区别1.3 data 为什么是函数而不是对象1.4 watch 和 computed 的区别1.5 虚拟 dom 的原理1.6 看过vue源码吗1.7 mixin 的原理和合并规则1.8 diff 算法1.9 react 和 vue 的区别

2024-04-12 00:03:43 173 1

原创 vue 中 mixin 的应用场景,原理和合并规则

Mixin 的工作原理是将 Mixin 中的选项合并到组件的选项中。多个组件的相同逻辑可以提出去来一个公共的 mixin。

2024-04-12 00:01:00 284 2

原创 vue 中的data属性为什么是一个函数而不是对象

根组件的data 可以是个对象,因为只有一个根实例 组件的实例需要是个函数,因为 组件可能有多个实例 vue 会使用 vue.extend() 构成组件实例 如果组件的 data 是个对像,编译会得到警告 the data option should be a fucntion that retures a pre-instance value in component definitions 同个组件的不同实例之间的数据会相互影响,因为公用了一个内存地址 如果 data 是个

2024-04-11 23:51:18 87 1

原创 css 面试题目总结篇,考前必看

只总结容易忘的问题,仅供参考。

2024-04-11 23:43:04 180

原创 css 重排和重绘的区别,和触发条件,避免方法

【代码】css 重排和重绘的区别,和触发条件,避免方法。

2024-04-11 23:36:29 279

原创 css3 新增加的属性有哪些

没错 CSS3 从2011年成为标准之后,2024年了,面试题中还是会出现。

2024-04-11 23:29:10 357

原创 AI大模型 、生成式AI、AI工具,必须知道的知识点

AI 大模型,即LLM 是 "Large Language Model" 的缩写,意为大型语言模型。它是一种基于 Transformer 架构并使用大量文本数据进行预训练的深度学习模型。Transformer 是一种采用注意力机制的深度学习模型,这一机制可以按输入数据各部分重要性的不同而分配不同的权重。该模型主要用于自然语言处理(NLP)与计算机视觉(CV)领域。

2024-04-11 23:07:42 402

原创 javascript 面试题目总结篇,考前必看

内容持续更新中,欢迎关注!

2024-04-11 12:11:32 281 1

原创 使用递归,手写实现数组的 flat 方法,两种方法

注意事项,flat 方法有一个参数,是扁平化的层级,默认值为1,别忘了。

2024-04-11 11:45:52 160

原创 跟着《深入浅出nodejs》系统学习 node 以及相关面试题一网打尽

内容持续更新中,内容较多难免疏漏,有不对的欢迎指正,有遗漏的部分会陆续补充。欢迎关注我的专栏《一网打尽所有面试题。

2024-04-10 23:23:15 676

原创 前端自动化测试的方法和工具

综上所述,前端自动化测试是确保前端应用质量的重要手段之一,通过各种测试方法可以有效地发现和解决问题,提高应用的稳定性、可维护性和用户体验。前端自动化测试是通过自动化工具来模拟用户操作,验证前端应用的功能、性能和用户体验是否符合预期的过程。

2024-04-10 23:20:50 460

原创 restful 风格接口

HATEOAS 是 RESTful 架构的一个关键概念,它通过在资源表述中包含可用操作的链接,使得客户端能够动态地发现和执行操作,从而减少了客户端与服务器之间的依赖关系。总的来说,RESTful 规范是一种设计 API 的方法论,它通过一系列的约束和原则来促进系统的可伸缩性、可维护性和可移植性,使得系统更加灵活和易于扩展。:RESTful API 提供了统一的接口,包括标识资源的 URI、使用标准的 HTTP 方法对资源进行操作、通过媒体类型对资源进行表述等。

2024-04-10 23:17:10 369

原创 什么是尾调用优化

一句话总结

2024-04-10 23:06:30 179

原创 node 中的 nextTick 和 vue 中的 nextTick 的区别

node 中的 nextTick 是 node 自带全局的变量 process 的一个方法,process.nextTick 是一个微任务,在 node 的所有微任务中最先执行,是优先级最高的微任务。浏览器中是没有这一个方法的。

2024-04-10 22:36:34 632

原创 node 的全局对象有哪些

node 和浏览器是两个不同的运行 js 的平台,对于浏览器来说,我们知道全局对象有window,对应的 node 中就是 global。

2024-04-10 20:56:36 180

原创 node 中常见的核心模块有哪些

fs:文件系统模块,用于处理文件的读写操作。 http:HTTP 模块,用于创建 HTTP 服务器和客户端。 https:HTTPS 模块,用于创建 HTTPS 服务器和客户端。 path:路径模块,用于处理文件路径。 os:操作系统信息模块,用于获取系统相关信息,如 CPU、内存等。 events:事件模块,用于实现事件驱动编程,包括 EventEmitter 类。 crypto:加密模块,提供了一系列加密算法和哈希算法的实现。 buffer:缓冲区模块,用于处理二进制数据。 querys

2024-04-10 20:28:36 372

原创 node 的路径分析和文件查找策略

所以 node 中路径分析主要是针对 require 方法的,当然还有其他的比如说配置文件(package.json)中。注意本篇文章的内容可以在《深入浅出 nodejs》这一本书中的 2.2 章节中找到详细介绍,这里只说结论。

2024-04-10 20:24:18 203

原创 webpack 的生命周期/钩子/hooks有哪些,plugin 能用的生命周期

webpack 的生命周期/钩子/hooks有哪些,plugin 能用的生命周期

2024-04-09 17:58:04 893

原创 用代码验证,esm 导出的是值的引用,commonjs导出的是值的拷贝

首先需要学习一下,其中一条关于导出值我们可以手动验证一下,先记住结论没错我又遇到这个问题了,面试官先问我 commonjs 和 esm 有啥区别?然后问如果 commonjs 导出一个模块,在模块内部改变一个值,模块外部的值会改变吗,我一脸懵逼?难道不是一样的么?然后又问 esm 的呢?【正确答案是commonjs 不会改变,esm 会改变】显而易见,他想得到的区别的答案之一肯定有【导出值】的区别。很遗憾我没有答出来。

2024-04-09 17:24:09 891

原创 vue 和 react 的区别

函数式思想,单向数据流。

2024-04-09 16:09:27 380

原创 面试前必看,仅供参考,不看不过面试就是一个活该

内容预警,本篇文章仅供参考前端面试题目总共就那几个模块,已经总结了好几个模块了,下面必看的都是已经总结过的,而且非常详细,非常详细,面试之前一定要看一下,要不然你就白总结了。【必看】别的不说,不管你知识点记得牢不牢,但是面试之前至少耐心的看一下这个专栏的文章,都已经一网打尽了,好不容易费劲吧啦的总结的。如果这里面的题目再没有回答上来,那属实是有点丢人了。剩下的没有总结的,没有回答上问题就属于是漏网之鱼,面试结束之后再总结。我就不信了,来来回回那么点东西,都记不住?有那么难吗?有那么难吗?有那么难吗?

2024-04-09 15:50:08 210

原创 支付宝小程序和微信小程序的区别和相同点

面试的时候提了一嘴支付宝小程序,结果让我说一下微信和支付宝小程序的区别,我根本不知道,早知道不说做过支付宝小程序了。别慌遇见问题,解决问题,先把两个官网文档看一下。

2024-04-09 15:20:41 152

原创 详解 node/浏览器 事件循环中的微任务的优先级

关于事件循环机制,可以参考。

2024-04-09 14:29:27 1101 5

原创 css能够触发硬件加速的属性, GPU硬件加速的原理

GPU 是图像处理单元,负责加速图形处理速度。浏览器的渲染图层包含两大类:普通图层、复合图层。复合图层使用 gpu 单元处理,就是硬件加速。css 硬件加速的属性有。

2024-03-16 15:46:31 389

原创 z-index 属性无效的情况和解决办法

设置 z-index 元素的 position 属性需要是relative 、absolute、或fixed。z-index 无效的情况。

2024-03-16 15:35:46 452

原创 【css面试题】弹性盒布局模型 flex 全部知识点整理

一、基本语法二、使用三、适用场景。

2024-03-15 15:39:42 631

原创 【微信小程序】原生组件的分层渲染 和 同层渲染

分层渲染就是,小程序原生组件是独立于 webview 的。所以无论如何原生组件的层级都高于 webview。两个层级是完全独立的,因此无法简单地通过使用。微信小程序的原生组件指的是,微信小程序语法中自带的 video 等标签。【这里的原生指的是微信小程序而不是 js】微信小程序的页面是基于 webview 的,其他的原生组件是独立于 webview 的。同层渲染,就是原生组件挂在到 webview 上。控制原生组件和非原生组件之间的相对层级。

2024-03-15 15:09:22 664

原创 js中的两个定时器setTimeout 、setInterval都可能不准的原因和解决办法

的执行时间会受到前一个回调函数执行时间的影响,导致累积误差,下一个回调,会在当前的回调结束之后再执行,如果当前的回调执行时间过程,那么下一次的执行是延迟的。定时器不是立刻放入事件队列中的,而是同步任务执行完了之后,timer模块计算时间到了,再放入队列中,总的来说,为了确保定时器的准确性,尽量保持回调函数的执行时间短暂,并且在需要更高精度的情况下考虑使用其他 API,例如。:JavaScript 是单线程的,如果事件循环中有其他任务阻塞了执行,:在页面不可见时,浏览器可能会降低或停止。的执行,以节省资源。

2024-03-12 23:48:27 639

原创 面试题目,手写代码,必会的题目总结

原生方法 Object.create call apply bind promsie.all promise.race 数组的方法 flat reduce map filter push repeat 原生操作符 instanceof new 功能函数 节流 防抖 深拷贝 柯里化 使用 setTimeout 实现 setInterval jsonp 格式化日期函数 应用相关 订阅发布

2024-03-12 20:52:58 812

原创 vue diff 算法的核心逻辑

面试官问你,你知道diff算法的逻辑是什么么,新旧dom是如何进行对比的?(1)首先 diff 算法在源码中的 runtime-dom 里面的patch方法中实现的,参考(2)diff 规则的深度优先,同层比较 比较的过程中,循环从两边向中间收拢面试官:你了解vue的diff算法吗?说说看 | web前端面试 - 面试官系列

2024-03-10 02:48:54 518

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除