自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 什么是强缓存,什么是协商缓存

强缓存(强制缓存):浏览器在请求资源时,会先检查本地缓存是否存在且未过期,如果满足条件,直接使用缓存资源,不会向服务器发送请求。强缓存主要通过响应头中的 Cache-Control(如 max-age)和 Expires 来控制。协商缓存:当强缓存失效后,浏览器会向服务器发送请求,带上上次服务器返回的标识(如 Last-Modified 或 ETag),服务器根据标识判断资源是否修改过:如果未修改,返回 304 状态码,浏览器继续使用缓存资源。如果修改了,返回新的资源和状态码 200。

2025-12-22 21:57:22 83

原创 港股证劵 社招 一面

【代码】港股证劵 社招 一面。

2025-12-22 21:02:54 223

原创 港股证劵 社招 一面

【代码】港股证劵 社招 一面。

2025-12-17 18:06:35 273

原创 技能特⻓回答

Elements(DOM/样式)、Network(接口)、Console(日志)、Sources(断点)、Performance(性能分析)兄弟/跨层级:EventBus(不推荐)、provide/inject、Vuex/Pinia、mitt。CORS(后端设置)、devServer proxy、Nginx 反向代理、JSONP(仅 GET)Promise/async-await、class、模块(import/export)管理用户信息(token、权限)、全局配置、购物车、Tab 标签状态等。

2025-12-14 15:19:12 483

原创 云希谷技术面

建立连接时,客户端会发送一个握手请求,服务器响应后连接建立,之后双方可以随时发送数据,连接保持打开状态,直到一方关闭。第三次握手:客户端收到服务器的SYN+ACK包后,发送一个带有ACK标志的数据包给服务器,表示连接确认,客户端进入ESTABLISHED状态。第二次握手:服务器收到SYN包后,回复一个带有SYN和ACK标志的数据包,表示同意建立连接,同时服务器进入SYN_RECV状态。第一次握手:客户端发送一个带有SYN标志的数据包给服务器,表示请求建立连接,并且客户端进入SYN_SEND状态。

2025-12-11 16:51:15 225

原创 华为松山湖技术面

2025-12-11 16:45:06 204

原创 一个免费、不怕打的评论插件!

言归正传,最近我打算做一个包含评论功能的网站,大致的需求是允许用户发布评论、浏览评论、修改评论、回复评论等。像我虽然给自己的网站写过好几次评论功能了,但是到现在依然觉得十分麻烦,真的不想再自己写了!好消息是,评论作为一个非常常见的,已经有非常多现成的轮子了。今天就给大家分享一个大厂开源的、免费的评论插件 ——Gitalk。

2025-11-08 11:55:14 778

原创 招商金科 社招 一面

好的,比如说我们开发了一个通用的表单组件,可以支持各种类型的输入框、下拉框和日期选择器;还有一个通用的弹窗组件,用于提示、确认和表单提交等场景;此外,我们还开发了一个数据表格组件,支持排序、筛选和分页功能。哈希模式是通过URL中的哈希值来实现路由,浏览器不会向服务器发送请求,因此页面不会刷新,适合单页面应用。而历史模式则是利用HTML5的History API,可以实现更友好的URL,支持后退和前进操作,但需要服务器支持,适合需要SEO的场景。这使得在使用箭头函数时,可以更方便地访问外部作用域中的。

2025-08-29 19:25:00 331

原创 佰钧成 社招 一面

解答:模块化开发是一种组织代码的方法,它将应用程序分解成独立的、可复用的模块。每个模块负责实现特定的功能,并通过导出和导入API与其他,口模块通信。模块化开发有助于代码的组织、维护和重用,同时也促进了团队协作。1.块级作用域:let 和 const替代 var,解决变量提升和作用域污染问题;const 用于定义常量不可重新赋值,实际项目中我默认用const需要修改时才用 let2.箭头函数简化函数写法;自动绑定 this,常用于事件回调、数组操作等;3.解构赋值。

2025-08-21 11:50:51 664

原创 面试官视角分析与提问点

第三个需求排期问题,要体现工作流程的规范性,比如需求评审、技术方案、工时评估,同时强调应对变更的灵活性,比如预留buffer和快速响应。的策略,通过头头、尾尾、头尾、尾头四种方式的快速比对,来尽可能多地复用已有的DOM节点,最后才进行暴力比对。当然,这是针对你简历内容的“考题预测”和“高分答案”梳理。第七个安全区适配,要提到iOS的env()和constant(),以及Android的meta标签,体现跨端适配经验。但浏览器的默认行为是:前进/后退时,页面是“唰”一下瞬间切换的,没有过渡动画。

2025-08-20 16:45:04 599

原创 封装组件时,如何设计?

非常好,这是一个考察前端开发者设计和工程化思维深度的经典问题。对于一个有3年经验并拥有组件库开发经验的候选人,面试官会期望听到不仅全面而且有深度的思考。以下是封装组件时需要考虑的关键点,我将其分为设计哲学、开发体验、性能与稳定性、可维护性与工程化四个维度,并附上口语化的表达建议。这是最核心的思考,决定了组件的基因。单一职责原则 (Single Responsibility Principle)开放封闭原则 (Open/Closed Principle)包容性 (Inclusive) / 无障碍访问 (A11

2025-08-20 16:39:17 955

原创 前端项目面试分析

【代码】前端项目面试分析。

2025-08-20 16:30:07 490

原创 洗涮刷 社招 一面

用户点击支付按钮,前话请求后端创建订单,后端调用微信统一下单接口,返回 prepy_id和签名信息,前端再用 wx.requestPaymnent唤起支付控件。用户点击支付按钮,前话请求后端创建订单,后端调用微信统一下单接口,返回 prepy_id和签名信息,前端再用 wx.requestPaymnent唤起支付控件。通过系统化的监控和错误处理机制,可以显著提升页面的稳定性和用户体验,同时快速响应和修复问题。1.对于复杂对象需要深度监听,一次性监听到底,它的计算量是非常大的,性能也是不太好的。

2025-08-16 17:35:10 994

原创 奇思妙物 社招 一面

CDN的回源是CDN工作机制的重要组成部分,合理的回源策略可以大幅降低回源压力、提升性能。常见优化方法包括智能回源、缓存优化、负载均衡和安全策略等,具体实现通常依赖于CDN服务商提供的功能。

2025-08-11 11:58:50 1090

原创 板凳社区 社招 一面

然后自定义指令中,根据技钮权限数据进行匹配。深拷贝:JSON.parse(JSON.stringify(obj)),或封装递归方法,或使用第三方库的方法,比如 JQuery的$.extend({},obj),或者lodash 的cloneDeep。拷贝的层级不同,深拷贝是指每一层数据的改动都不会影响原对象和新对象,浅拷贝只有第一层的属性变动不互相影响,深层的数据变动还会互相影响。秒传是指用户上传的文件,如果服务器已存在该文件,则无需真正上传,直接返回上传成功。

2025-07-25 00:37:25 624

原创 腾讯 社招 一面

Vue与React的核心差异体现在设计理念、数据管理机制和生态系统构建方式上‌。React以函数式编程和JSX为特色,注重灵活性和控制力。Vue通过Object.defineProperty/Proxy建立数据监听,实现自动依赖追踪和视图更新。Vue使用类HTML模板分离逻辑与视图,提供v-if/v-for等语义化指令。需要快速上手的项目(新手友好)。‌响应式系统 vs 函数式编程‌。‌模板语法 vs JSX‌。‌React适用场景‌。‌核心设计理念对比‌。‌Vue适用场景‌。

2025-06-26 18:30:57 353

原创 分转 社招 一面

Promise是 JavaScript 中表示异步操作最终完成或失败的对象。它可以将异步操作的结果(成功或失败)与后续处理逻辑解耦,使代码更清晰、可读性更高。

2025-06-19 18:08:35 560

原创 四方精创 社招 一面

2025-06-18 21:26:30 162

原创 项目的难点

举个例子:甲方用户Excel 表格用习惯了,基于这样产品经理让我们开发了供内部人员使用的一个页面,操作的时候保持在一个特定的页面,页面有一个表,表数据可以是A表,也可以是B表,相当于把公司测试环境的数据库的表数据通过前端可以直观看到和直接操作数据,一个表头对应一字段,公司表数据来源有3种,分别来自table(表与表)、excel(Excel 导入)、api(聚水潭)。分析:模拟后端同学的建表过程,从创建SQL语句到字段生成对应数据预览,记录整个流程,方便回溯,做成工具化。

2025-06-17 23:44:20 324

原创 职业规划问答

3.而且通过前期对公司的了解,公司涉猎的行业正是我想去深挖的,希望通过公司这个平台,深入了解这个行业。2.公司招聘的这个岗位正好跟我的发展方向很契合,我很感兴趣,1.我总结了自己过去的职业发展路径(前端开发),

2025-06-16 21:42:19 179

原创 闭包和v-if 、v-show 的区别

同时当修改了 dialog 的数据,关闭 dialog 时,那么 dialog 的状态会被清空(组件消失)。当页面展示时,dialog 就已经被渲染出来了,那么这就意味着 dialog 的生命周期已经完成,如果涉及到 props 传参,那么其实参数就已经传递了,同时当修改了 dialog 的数据,关闭 dialog 时,那么 dialog 的状态会被保持。v-if 和 v-show 都是用来控制元素是否展示的。所以,v-if和 v-show 的选择,我们需要基于当前 dialog 的业务场最来进行判断。

2025-06-10 12:05:28 213

原创 vue组件的data为什么是函数?

在JS中,实例是通过构造函数创建的,每个构造函数可以new出多个实例,每个实例都会继承原型上的方法和属性。vue组件的data为什么是函数?

2025-06-06 17:45:17 269

原创 箭头函数和普通函数的区别?

4.this指向不同,箭头函数没有this,在声明的时候,捕获上下文的this供自己使用,一旦确定不会再变化。在普通函数中,this指向调用自己的对象,如果用在构造函数,this指向创建的对象实例。5.箭头函数没有arguments(实参列表,类数组对象),每一个普通函数在调用后都有一个arguments对象,用来存储实际传递的参数。3.箭头函数不能作为构造函数来使用,普通函数可以用作构造函数,以此来创建一个对象的实例。2.箭头函数都是匿名函数,而普通函数既可以是匿名函数,也可以具名函数。

2025-06-06 17:42:25 743

原创 圆通速递一面

CSS 盒模型是指每个 HTML 元素可以被看作一个矩形盒子,这个盒子由多个区域组成。这些区域包括内容区域、内边距(padding)、边框(border)和外边距(margin)

2025-06-05 11:22:50 1168

原创 https相比http的区别

https相比于http的区别主要在于安全性。https使用SSL/TLS加密传输数据,确保数据在客户端和服务器之间的通信是加密的,防止数据被窃听或篡改。而http是明文传输,没有加密,存在安全风险。此外,https需要通过CA认证获取数字证书,而http无需认证。https相比http的区别在于:https使用了SSL/TLS加密协议,确保数据传输的安全性和完整性,通信时需要证书验证。

2025-06-03 17:15:39 312

原创 二、自我介绍

领导,你好,我叫XXX,毕业于广西大学计算机专业,有三年的前端开发经验。具备多个大型项目开发经验,擅长Vue和uniapp技术栈。在上一家公司负责过多个项目的架构设计和核心代码编写,具备良好的团队协作能力。

2025-06-03 17:14:21 210

原创 一面怎么准备

举个例子:甲方用户Excel 表格用习惯了,基于这样产品经理让我们开发了供内部人员使用的一个页面,操作的时候保持在一个特定的页面,页面有一个表,表数据可以是A表,也可以是B表,相当于把公司测试环境的数据库的表数据通过前端可以直观看到和直接操作数据,一个表头对应一字段,公司表数据来源有3种,分别来自table(表与表)、excel(Excel 导入)、api(聚水潭)。其实我也很看重贵公司的发展前景和机会,目标岗位也符合我的个人职业规划,希望能够成为公司的一员,也相信公司会给我合理的薪资.

2025-05-29 19:34:22 445

原创 给出一个数组,将其转为树结构类型

【代码】给出一个数组,将其转为树结构类型。

2025-05-28 17:44:15 149

原创 第四章:响应系统的核心设计原则

2.proxy:这是vue3的响应式核心API。该API表示代理某一个对象。代理对象将拥有被代理对象的所有属性和方法,并且可以通过操作对象来监听对应的。默认情况下,JS是非常死板的,所以如果想要让程序变得更加“聪明”那么需要额外做一些事情。:这是vue2的响应式核心API,但是这个API存在一些缺陷,他只能监听。),vue2的对象或数组会失去响应性。最后如果我们想要“安全”的使用。通常我们有两种方式可以监听。一起才可以,因为一旦我们在。所以在“某些情况下”(时,也需要被监听到。

2025-05-15 18:33:35 156

原创 Object.defineProperty的缺陷,vue3为什么使用proxy?

proxy和Object.defineProperty存在一个非常大的区别1.a.proxy将代理一个对象(被代理的对象),得到一个新的对象(代理对象),代理对象同时拥有被代理对象的所有属性。b.当想要修改对象的指定属性时,我们应该使用代理对象进行修改c.代理对象的任何一个属性都可以触发handle的getter和setter2.a.为指定对象的指定属性设置属性描述符b.当想要修改对象的指定属性时,可以使用原对象进行修改c.通过属性描述符,只有被监听的指定属性,才可以触发getter和${

2025-05-14 16:52:23 204

原创 echarts5地图依赖缺失文件

font项目npm下载缺失文件。

2025-03-06 11:55:06 281

原创 若依(RuoYi-Vue)+Flowable工作流前后端整合,遇到的常见问题

若依(RuoYi-Vue)+Flowable工作流前后端整合,查漏补缺

2025-02-18 15:47:10 677

原创 常见的js内存泄漏

闭包会造成对象引用的生命周期脱离当前函数的上下文,如果闭包使用不当,可以导致环形引用,类似于死锁,只能避免,无法发生之后解决,即使有垃圾回收也还是会内存泄漏。5.console日志记录,控制台日志记录对总体内存内置文件的影响,也是个重大的问题,同时也是容易被忽略的。记录错误的对象,可以将大量的数据保留在内存中。2.计时器和回调函数timers、定时器setInterval或者setTimeout在不需要使用的时候,没有被clear,导致定时器的回调函数及其内部依赖的变量都不能被回收,这就会造成内存泄漏。

2024-12-03 18:10:03 297

原创 说一下vue的双向绑定原理

其次,vue通过发布订阅模式,维护了一个订阅者数组,当数据发生变化时,vue会通知所有订阅者进行更新。补充:订阅者是vue中的一个概念,它是一个用于管理更新视图的对象,当数据发生变化时,vue会通知所有订阅者进行更新,在vue中,每一个挂载到视图上的组件,或者每一个watcher,都可以被看成一个订阅者,他们订阅了某一个数据的变化,并等待数据发生变化时进行更新,订阅者是vue实现双向数据绑定的关键组成部分,管理着数据和视图之间的关系,保证了数据的变化能够及时反映到视图上。2.解析css生成cssDOM树。

2024-10-15 17:09:13 191

原创 el-table表头根据响应数据排列

用文心一言写了数据结构转换,想想后面还用得到,记录一下。

2024-10-14 21:53:17 432 1

原创 vue2+element-ui(若依)柱状图结合折线图组件封装

vue2+element-ui(若依)柱状图结合折线图组件封装

2024-06-14 09:14:50 2012

原创 spring总结

spring总结

2023-12-20 23:47:54 1771 1

原创 原型,原型链2023.2.11

原型,原型链

2023-12-17 20:50:16 318 1

原创 vue2和vue3的区别

当面试被问到Vue的响应式原理时,可以这样回答。

2023-12-17 20:38:28 445 1

原创 关于复选框(二)

一维数组复选框多选

2023-06-06 21:38:43 103 1

空空如也

空空如也

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

TA关注的人

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