- 博客(70)
- 收藏
- 关注
原创 map和forEach的区别
调用接口处理返回值时,因map会返回一个新数组,不影响原数据,所以通常用map。map有返回值,返回一个和原数组长度一致的新数组,可以进行链式操作。如果不打算改变数组只是用它做其他操作,通常用forEach。forEach会改变原数组。forEach没有返回值。2.是否会改变原数组。map不会改变原数组。
2025-06-05 17:49:00
87
原创 如何理解promise
promise有两个方法:promise.all和promise.race,all适用于多个请求一起返回数据,race返回第一个完成的Promise,无论它成功或失败。promise对象代表一个异步操作,解决的了回掉地狱的问题。promise包括三种状态:进行中,已成功,已失败。
2025-05-22 13:39:49
189
原创 webpack性能优化
避免重复编译第三方库:把echarts、elementui这些单独打包到一个文件中避免webpack的重新打包。用thread loader等插件开启多个并行的子进程对多个js文件压缩打包。让webpack的查找范围缩小:alias、extensions。webpack构建过程中会对所有的模块进行编译处理。用noparse配置哪些文件不需要解析。
2025-05-22 12:23:27
425
原创 vue2和vue3的区别
vue2通过Object.defineProperty的get和set做数据劫持结合发布订阅者模式实现的。1.vue2把逻辑视图样式都在一个文件里写着,vue3把他们抽离开了,可以自定义hook实现逻辑复用。vue2有11个生命周期,vue3去掉了beforeCreate和created。vue3只会比较标识发生变化的节点进行试图更新,对标识没有发生变化的节点直接复用。vue2将数据放在data里,方法放在method里。2.双向数据绑定的原理不一样。4.定义数据的方式不一样。3.API类型不一样。
2025-05-22 11:38:15
175
原创 let、var、const的区别
var会被初始化为undefined,let和const不会被初始化。var是全局作用域或函数作用域。let和const是块级作用域。const不能更新不能重新声明。var可以更新,可以重新声明。let可以更新不能重新声明。
2025-05-16 15:47:51
151
原创 base 西安 | 前端面试问题汇总 (2025年5月)
1.vue2和vue3的原理及区别2.伪数组3.对箭头函数怎么理解的4.vue父子组件传值的几种方式5.对Promise的理解。
2025-05-16 15:15:04
252
原创 chrome浏览器取消右上方的更新红点提示
引号后添加 --disable-background-netwroking。在桌面找到chrome浏览器的快捷方式,右键打开属性。
2024-04-17 10:05:15
1073
原创 js宏任务和微任务
事件循环执行顺序:微任务 -> 宏任务(微任务 > DOM渲染 > 宏任务)宏任务:setTimeout、setInterval、dom、ajax。微任务:promise.then()、async/await。执行事件循环的前提是执行完所有同步任务。进入事件循环的有:事件、请求、定时器等。执行流程:同步任务 -> 事件循环。执行宏任务的前提是执行完所有微任务。事件循环分:宏任务、微任务。
2024-03-12 10:11:00
279
原创 nextTick的作用
使用场景:应用第三方插件如by scroll、echarts图表时,可能计算的宽高有偏差,插件延迟计算了宽高等数据内容,此时插件内容需要在nextTick中调用。nextTick用于———获取更新后的dom内容。
2024-03-12 09:08:44
226
原创 js事件冒泡机制
事件冒泡是一个阶段,在这个阶段里当我们点击一个元素时,会先查看这个元素有没有对应的事件处理函数,如果没有,继续去父级找它的事件处理函数,如果有就执行。阻止事件冒泡:event.stopPropagation。
2024-03-12 08:56:56
233
原创 css中常用单位辨析
px:像素;css中最普遍最常用的单位,不管在何种设备或分辨率上,1px始终代表屏幕上的一个像素。%:百分比;基于父元素相对属性的百分比。em:当前字体大小的倍数;基于父元素字体大小rem:根元素字体大小的倍数;基于根元素字体大小vh:视口(浏览器窗口)高度百分比;1vh等于视口高度的1%vmin,vmax:视口宽度或高度的最小值、最大值。
2023-09-27 09:49:14
372
原创 Navicat15天试用期过期解决办法
如果你是windows电脑,发现过期了先把Nvaicat关掉,按照以下步骤可以恢复到15天试用。
2023-09-01 19:16:16
28759
28
原创 Vuex入门
两个子组件无法直接通信,通常需要借助父组件实现两个同级子组件的通信,当组件之间需要共享的数据较多,同时代码逻辑相对复杂时,会导致代码大量冗余,Vuex就解决了这一问题,提供了了组件之间公共数据的存放和数据共享,哪个组件需要用时,直接从这个公共的地方取即可。Vuex是一个状态(数据)管理工具,将数据存在一个公共的地方,谁要就去取vuex的5个属性1.state:用于存放公共数据,类似组件中的data;2.mutation:唯一修改state的地方,存数据修改的逻辑(同步操作)
2023-09-01 18:36:57
192
原创 发布自己的npm包
npm init输入npm init后,一路默认即可初始化成功,如下:初始化成功后会生成一个package.json文件 n(以我的文件夹demo-npm-dir为例)然后在index.js写即可。
2023-08-30 23:48:16
648
原创 css定位
定位的分类:static,relative,absolute,fixed。absolute 绝对定位 相对于最近的一级定位父元素定位。relative 相对定位 相对于自身定位。static 是定位的默认值(无定位)fixed 固定定位。
2023-08-25 02:37:03
389
原创 隐藏元素的方式
2.display:none 隐藏元素不占位,彻底移除元素。1.visibility:hidden 隐藏元素依然占位。3.opacity:0 元素完全透明依然占位。
2023-08-25 02:04:02
82
原创 css盒模型
盒模型的组成:盒模型的分类:内容盒模型(标准盒模型) — 盒子的宽=width+padding+border边框盒模型 — 盒子的宽=width。
2023-08-25 01:09:27
533
原创 css弹性布局的方式
任何一个容器都可以定义为弹性布局容器,使用display:flex(display:inline-flex)开启弹性布局。4.flex-flow: flex-direction和flex-wrap的组合简写。6.align-content:多条轴线的对齐方式。3.flex-wrap::一条轴线排不下是否换行。1.flex-direction :主轴的方向。:子元素在交叉轴的对齐方式。:子元素在主轴的对齐方式。
2023-08-23 14:16:34
945
原创 防抖,节流
防抖(debounce):类似法师技能读条,读条没完再按技能就会重新读条,在触发后的n秒内只会执行一次,若在这n秒内重复触发则重新计算节流(throttle):连续发生的事件在n秒内只执行一次函数。
2023-08-14 11:26:41
413
1
原创 实现跨域的几种方式
前后端的分离导致了跨域的产生跨域的三要素:协议 域名 端口 三者有一个不同即产生跨域例如:httphttps由于协议不同,端口不同而产生跨域注:http的默认端口80,https的默认端口443跨域的解决方案前端:webpack proxy,jsonp,ngix反向代理,webpack plugin后端:cors。
2023-08-08 18:21:13
440
1
原创 location.href 辨析
window.location.href(location.href):当前页面的跳转parent.location.href:上层页面的跳转 在父页面打开新页面top.location.href:最外层页面的跳转 在顶层页面打开新页面。
2023-07-12 15:24:43
185
原创 Warning: To load an ES module, set “type“: “module“ in the package.json or use the .mjs extension.
在demo01.js文件中导入第三方库报错如下:先在当前目录下终端运行命令 然后在生成的package.json中添加再次运行 node demo01.js 文件正常执行。 Node运行js出现 Cannot use import statement outside a module的问题(亲测有用)_javascript_爱在冰川了-华为云开发者联盟
2023-07-12 15:24:12
383
原创 obj.hasOwnProperty报错 error:Do not access Object.prototype method ‘hasOwnProperty‘ from target object
Do not access Object.prototype method 'hasOwnProperty' from target object
2023-06-20 11:05:34
267
原创 navicat连接mysql数据库密码忘记了快速找回
勾选Export Password,选择要输出的文件目录(输出文件格式为xxx.ncx),打开文件后搜索Password=,用下面大佬的这段代码解析一下(连接navicat时,报错Access denied for user ‘root‘@‘localhost‘ (using password: YES)快速执行下面的代码)就找回来了,日常被自己蠢哭。
2023-05-19 11:28:34
2822
原创 Vue脚手架初始化项目后报错 Parsing error: No Babel config file detected for 报错
在package.json的parserOptions选项中添加。
2023-05-18 11:49:40
415
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人