自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaScript中ES Module和CommonJS的异同

ES Module(ESM)和CommonJS(CJS)都是JavaScript的模块化规范,都可以用来导入和导出模块。

2025-09-06 11:01:47 123

原创 JavaScript的事件循环机制

意味着它一次只能执行一个任务。而事件循环就是去协调在JavaScript环境中运行的同步任务、异步任务(微任务、宏任务)的执行顺序的一种机制。它是 JavaScript 实现异步执行的核心。

2025-09-05 10:14:07 345

原创 apply、bind、call改变this指向——JavaScript

并且传递的参数形式是以逗号进行分隔,语法:func.bind(thisArg,arg1,arg1,......)。apply 方法调用函数,同时指定被调用函数的this值。普通函数中的 this 一般指向调用它的元素。,就能改变函数内部的this指向。是函数对象的一个方法,用于。

2025-09-04 10:06:20 311

原创 filter、reduce、map、forEach的区别

filter、reduce、map和forEach都是J,通过遍历的方式对数组的数据进行操作。

2025-09-03 14:10:10 350

原创 使用IntersectionObserver实现懒加载

它是一个浏览器提供的,用于监听某个元素与视口(或其他指定容器)的交叉状态,相比传统的scroll事件监听,它性能更好,因为它是的,不会频繁触发。

2025-09-02 09:48:09 299

原创 JavaScript节流和防抖——性能优化

lodash库的导入,之后有两种导入方式:按需导入对应的防抖函数;使用通用导入。

2025-09-01 09:19:20 757

原创 JavaScript的深浅拷贝详解

原始值按值复制,对象值(引用类型)只复制指针,真正的数据拷贝只有在你显式写出或使用深拷贝方法时才会发生。

2025-08-31 12:30:00 1290

原创 JavaScript原型详解——面试重点

[Prototype]] 隐藏链接。prototype 对象。

2025-08-30 17:13:47 374

原创 Ajax、Fetch和Axios的区别

【代码】Ajax、Fetch和Axios的区别。

2025-08-29 11:49:23 330

原创 Vuex和Pinia的区别

将一个store分为很多个模块,每个模块中都有相应的data、mutation、action、getters等,需要手动嵌套modules,层级较深;中是通过mutation进行对data数据进行同步修改,action是进行异步操作,而。直接去掉 mutations,state 可以直接写 ,无需使用mutation。的每一个store都是由defineStore()去定义的独立的模块,易于维护。打包后仅 1 KB,且基于 Vue 3 的 Proxy,响应式更快;基于泛型,类型推导零成本,开发效率更高。

2025-08-28 13:16:11 321

原创 三种模型(MVVM、MVP、MVC)——面试重点

MVP是MVC的改进版:Model(模型):负责数据管理View(视图):负责用户界面Presenter(展示器):作为视图和模型的中间人。

2025-08-27 13:26:06 497

原创 hash和history路由的区别——面试重点

兼容性好,支持所有浏览器,无需服务器配置,刷新页面也会返回404。需要服务器配置,若服务器配置错误会返回404页面。对SEO友好,可以使用完整的路由分析。服务器只会解析#前的内容、变化时,页面不会重新加载。事件响应前进/后退操作。

2025-08-26 13:13:59 906

原创 Vue的nextTick()使用

Vue.js的nextTick()是一个全局API,用于在数据修改后获取更新后的DOM。其主要作用是确保DOM更新完成后再执行操作,避免重复渲染和性能问题。使用方式包括Vue3的组合式API(async/await)和Vue2的选项式API(回调函数)。注意事项:nextTick返回Promise,可使用async/await;避免在其中再次更新数据以防无限循环。该API常用于数据更新后操作DOM元素(如聚焦输入框、初始化图表等)。

2025-08-26 13:05:55 356

原创 解决跨域问题——前端方法

浏览器为了保证安全,限制网页从一个源访问另一个源的资源是产生的限制。(源:由协议+域名+端口共同决定)

2025-08-25 13:47:48 313

原创 Object.defineProperty和Proxy的对比

Object.defineProperty和Proxy都是JavaScript中用于拦截对象操作的机制,但存在显著差异。Object.defineProperty无法监测数组变化、新属性添加/删除及深层次数据劫持,而Proxy通过ref和reactive解决了这些问题。对于Object.defineProperty,Vue提供了Vue.set()和Vue.delete()方法来处理响应式数据变更,如this.$set(this.items,0,'newItem')和this.$delete(this.use

2025-08-25 10:40:52 321

原创 vue2和vue3的异同点——面试重点

Fiber 是一个可中断的递归算法,能够将任务拆分成多个小任务,允许浏览器在执行任务时进行中断和恢复,从而提高页面的响应性和性能。vue2兼容性较好,支持较旧的浏览器版本;而vue3对浏览器的兼容性要求更高,需要支持 ES6 的浏览器环境,但可以通过。两者都通过「响应式系统」实现数据驱动视图,开发者只需关注状态变化,框架自动更新 DOM。均支持 TypeScript(Vue 3 类型推断更完善,但 Vue 2 也可通过。),Vue 3 仅新增组合式 API 的对应钩子(如。通信,保持一致的组件设计模式。

2025-08-17 12:57:54 405

空空如也

空空如也

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

TA关注的人

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