- 博客(44)
- 收藏
- 关注
原创 前端常见面试题⑥
Async/await 是最近添加的功能,它通过使用异步函数和等待 Promise 来简化异步代码,使代码看起来更加同步且更易于理解。它涉及选择适当的 HTML 标签(例如“”、“”、“”、“”等)来表示页面上元素的内容和用途。它们允许更高效和模块化的 CSS 开发,从而实现代码重用、改进的组织和更轻松的维护。经典继承通常用在像 Java 或 C# 这样的语言中,这些语言需要严格的类层次结构,并且对象之间的关系是固定的和层次化的。
2024-02-06 13:20:03 572
原创 前端常见面试题⑤
当在脚本或函数的开头使用时,它会强制执行更严格的规则并防止常见错误。严格模式会禁用某些容易出错的功能,帮助捕获无声错误,并促进更安全、更可靠的代码。它们简化了组件组合,减少了对类组件的需求,并通过允许在不编写类的情况下使用状态和其他 React 功能来提高代码的可读性和可维护性。您可以使用 DOM API 的“createElement”和“appendChild”方法创建新的“span”元素并将其作为子元素附加到“div”元素。当对元素的样式进行不影响其布局的更改(例如更改背景颜色)时,就会发生重绘。
2024-02-06 13:18:50 505
原创 前端常见面试题④
高阶组件 (HOC) 是采用组件并返回该组件的增强版本的函数。HOC 是使用接受组件作为参数并返回新组件的函数创建的。代码风格 linting 工具(例如 ESLint)有助于强制实施一致的编码风格并捕获潜在的错误或代码异味。ES6 是一个较旧的术语,指的是 ECMAScript 的第 6 版,而 ES2015 特指该版本中引入的功能。例如:解构允许您将对象或数组中的值提取到不同的变量中。单元测试侧重于测试小的、独立的代码单元,例如单个函数。柯里化是一种允许您创建函数链的技术,每个函数都采用参数的子集。
2024-02-05 08:52:12 678
原创 前端常见面试题③
调用堆栈按照后进先出的顺序处理函数,而任务队列则按照先进先出的顺序处理。ES6 集合提供了自动重复消除、高效的成员资格测试、顺序独立性和方便的集合操作等优点。本机对象(如数组或字符串)是 ECMAScript 规范的一部分,它们的行为由语言本身定义。经典继承涉及从类继承的实例,创建基于类的分层系统。不变性的优点包括更简单的代码和更容易的调试,而缺点包括潜在的内存开销。词法作用域是指函数访问在其自身作用域之外定义的变量的能力。高阶函数是一种采用一个或多个函数作为参数和/或返回一个函数作为其结果的函数。
2024-02-02 14:02:21 452
原创 前端常见面试题②
BFC 有助于实现可预测且一致的布局,特别是在处理复杂的定位和浮动元素时。let 和 const 具有块作用域,这意味着它们仅限于声明它们的块(例如,在大括号内)。匿名函数,也称为函数表达式,是在没有指定名称的情况下定义的函数。规范化 CSS 的目的是通过应用一组预定义的样式,使元素在浏览器中呈现一致。剩余运算符(例如,…let 和 const 是在 ES6 中引入的,而 var 从 JavaScript 的早期版本开始就可用了。规范化提供了更一致的基础,但可能需要额外的自定义才能满足您的设计要求。
2024-02-02 14:01:20 458
原创 前端常见面试题①
在 call 中,后续参数是单独传递的,而 apply 期望第二个参数是一个数组,该数组被解包为被调用函数的参数。事件委托是一种技术,您无需将事件侦听器附加到各个元素,而是将单个事件侦听器附加到将为其子元素处理事件的父元素。事件冒泡是一种机制,其中内部元素中发生的事件通过 DOM 层次结构中的父元素传播或“冒泡”。它从最里面的元素开始,一直持续到文档级别,一路触发附加到每个父元素的事件处理程序。主要区别在于 Array.forEach() 迭代数组的每个元素并对每个元素执行操作,但它不返回新数组。
2024-02-02 14:00:22 414
原创 webpack详解
对此你可以通过插件的filename属性,告诉插件输出的 CSS 文件名称是通过[name]_[contenthash:8].css字符串模版生成的,里面的[name]代表文件名称,[contenthash:8]代表根据文件内容算出的8位 hash 值, 还有很多配置选项可以在ExtractTextPlugin的主页上查到。浏览器在用户访问页面的时候,为了加快加载速度,会对用户访问的静态资源进行存储,但是每一次代码升级或者更新,都需要浏览器去下载新的代码,最方便和最简单的更新方式就是引入新的文件名称。
2024-02-02 13:58:37 665
原创 前端最全面试八股文
在改变不同的屏幕分辨率可以切换到不同的静态布局上,但是布局中的元素位置会发生改变,但是在每个静态布局中,页面中的元素不会随着窗口大小的调整发生变化。箭头函数与普通函数的区别在于: 1、箭头函数没有this,所以需要通过查找作用域链来确定this的值,这就意味着如果箭头函数被非箭头函数包含,this绑定的就是最近一层非箭头函数的this, 2、箭头函数没有自己的arguments对象,但是可以访问外围函数的arguments对象 3、不能通过new关键字调用,同样也没有new.target值和原型。
2024-02-02 13:52:06 993
原创 给想学前端的小白整理了一下学习路线
在JavaScript脚本语言中,只具有非常有限的对二进制数据的处理能力,而Node.js所提供的Buffer类则提供了丰富的对二进制数据的处理能力。拥有便捷的插件扩展机制和丰富的插件。非常重要的理由就是:它能够兼容市面上主流的浏览器, IE 和FireFox, Google 浏览器处理 AJAX,创建异步对象是不同的,而jQuery 能够使用一种方式在不同的浏览器创建AJAX 异步对象。而右边的Node环境中,只有V8引擎,用于处理JS代码,所以Node.js中,访问DOM和BOM是无法实现的。
2024-02-02 13:28:55 1256
原创 前端如何预防CSRF
①阻⽌不明外域的访问:同源检测 、Samesite Cookie ②提交时要求附加本域才能获取的信息:CSRF Token 、双重Cookie验证1、同源检测 既然CSRF⼤多来⾃第三⽅⽹站,那么我们就直接禁⽌外域(或者不受信任的域名)对我们发起请求: 使⽤Origin Header确定来源域名: 在部分与CSRF有关的请求中,请求的Header中会携带Origin字段,如果Origin存 在,那么直接使⽤Origin中的字段确认来源域名就可以 使⽤Referer Header确定来源域名: 根据HTTP协
2024-02-01 14:22:56 756
原创 在vue项目中使用cnpm安装依赖报错Install fail! Error: Unsupported URL Type: npm:string-width@^4.2.0
报此类型的错误大概率是依赖版本与cnpm版本不匹配 ,如图所示是在安装vue-easytable的时候报错,我之前的版本是1.7.2,后来将package.json中对应的配置改为最新版本后再安装就不报错了。
2024-02-01 13:49:52 1544
原创 javaScript字符串常用方法
padStart(targetLength, padString):用另一个字符串填充当前字符串(如果需要会重复填充),直到达到给定的长度。填充是从当前字符串的末尾开始的。这里增的意思并不是说直接增添内容,而是创建字符串的一个副本,再进行操作除了常用 +以及 ${}进行字符串拼接之外,还可通过 concat()接收一个参数,可以是一个正则表达式字符串,也可以是一个 RegExp 对象,找到则返回匹配索引,否则返回 -1。这里的删的意思并不是说删除原字符串的内容,而是创建字符串的一个副本,再进行操作。
2024-01-31 14:28:09 503
原创 聊⼀聊如何在JavaScript中实现不可变对象
聊⼀聊如何在JavaScript中实现不可变对象,是⾃成⼀体的⼀套数据结构,性能良好,但是需要学习额外的。深克隆,但是深克隆的性能⾮常差,不适合⼤规模使⽤。实现不可变数据有三种主流的⽅法。特性,⽆需学习额外的。
2024-01-31 08:08:33 373
原创 vue2组件传值大全
vue2组件传值大全,假设有三个组件: A.vue、B.vue、C.vue 其中 C是B的子组件,B是A的子组件。下面我们分别介绍每种通信方式且会说明此种方法可适用于哪类组件间通信。①父子组件通信②隔代组件通信③兄弟组件通信④不相关组件传值。$parent / $children:访问父 / 子实例。在之前的文章中有提到过,可以翻看之前的文章进行参考。②子组件向父组件传值。①父组件向子组件传值。
2024-01-30 10:37:03 657
原创 VUE3路由补充
作用:控制路由跳转时操作浏览器历史记录的模式。作用:将特定的路径,重新定向到已有路由。浏览器的历史记录有两种写入方式:分别为。二.redirect重定向。一、replace属性。
2024-01-27 13:43:06 357
原创 VUE3新特性hook
如何使用VUE3新特性hook,新建index.vue的文件中引入index.ts使用其中定义的方法。在新建的hook文件夹下新建index.ts,定义了两个请求方法。中的逻辑更清楚易懂。—— 本质是一个函数,把。的优势:复用代码, 让。
2024-01-27 13:35:41 907
原创 VUE3中路由常用配置及常见问题解决方法
VUE3中路由常用配置及方法,在自定义组件中添加方法,注意组件路由守卫不支持setup语法糖,解决方法为增加sciript标签,上下两部分有两个script标签。先写这么多,都是常用的方法,后面继续更新其它配置及方法。总之不要卸载setup语法糖内,否则会报错。router/index.ts中路由独享守卫。main.ts中全局路由守卫。
2024-01-26 14:20:07 828
原创 浏览器密码自动填充禁用
实测网的好多方法都不管用,所以自己写了一个,主要的思想就是将password类型的input框改为text类型的input框,然后输入的时候将所输入字符转化为"●",话不多说,上代码。此方法为输入框change事件,根据自己的业务需求简单修改即可。
2023-11-26 15:13:32 57
原创 介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用
容器是由镜像创建的运行实例,可在不同的环境中快速启动和停止。1. 基于Docker容器化技术的持续集成和持续部署:将应用程序和环境打包成Docker镜像,利用Docker的容器管理工具,自动化构建、测试和部署应用程序,降低开发和操作人员的工作量。3. 多语言和多环境支持:Docker可以在任何操作系统和云平台上运行,支持多语言和多环境的开发和部署,提高开发效率和应用程序的可移植性。2. 应用程序扩展和负载均衡:通过Docker服务管理工具,可以实现应用程序的横向扩展和负载均衡,提高应用程序的可用性和性能。
2023-08-26 09:22:38 81
原创 我的创作纪念日
在我的创作旅程中,我遇到了许多挑战和困难。通过这些文章,我不仅分享了我的见解,还与读者们进行了互动和讨论。我希望通过我的创作,能够对更多的人产生积极的影响,帮助他们解决问题和提升技能。我参与了许多技术讨论和问答,这进一步加深了我的理解和知识。我期待着未来的创作旅程,并希望能够继续与你们分享我的知识和经验。我决定在这里开始我的创作之路,并与其他技术爱好者分享我的知识和经验。在这篇文章中,我想与大家分享我的创作之旅以及对未来的展望。
2023-08-25 14:07:38 55 1
原创 vxeTable 复选框分页数据记忆选中问题
配置checkbox-config的reserve和checkRowKeys属性,checkRowKeys的值为selectionRows,用于盛放我们要选中的数据id。写到这里我们已经成功了一大部分了,但是还没达到我们想要的效果,最重要的是最后一步,就是在分页事件中给我们已经选中的数据添加选中状态。这样我们就实现了vxeTable表格翻页后记忆选中行功能了。着重介绍一下selectChangeEvent事件。上面的方法写到翻页的查询逻辑中。先介绍一下表格的配置。
2023-06-30 14:05:35 1374 1
原创 解决vxe-table切换显示隐藏的时候表格样式错乱问题
此时我们只需要在切换表格的方法里触发一下表格的refreshData()方法即可解决此问题。
2023-06-29 11:31:40 769 1
原创 避坑:css二级菜单的隐藏与显示问题
我们想要的效果是鼠标移入首页菜单的时候显示下方二级菜单,并且可以选中下方二级带单,但是由于层级问题,导致我们只要鼠标移到首页之外的区域二级菜单就会隐藏。由于层级问题导致css设置的二级菜单的显示在移出菜单后二级菜单又隐藏了。解决办法就是使用z-index属性设置二级菜单的层级样式。
2023-06-26 16:17:31 681 1
原创 如何解决vxe-table表格数据实时刷新的时候切换界面表格变形问题
此问题主要是由于表格容器宽度及列宽自适应所致,所以需要给表格宽度及列宽固定宽度,注意不要使用百分比。
2023-06-17 13:52:19 782
原创 令人惊艳的算法分享
例如,简单线性回归,它有一个自变量(x 轴)和一个因变量(y 轴)比如预测明年的房价涨幅、下一季度新产品的销量等等。听起来并不难,不过线性回归算法的难点并不在于得出预测值,而在于如何更精确。为了那个可能十分细微的数字,多少工程师为之耗尽了青春和头发。
2023-06-05 16:15:21 135 1
原创 自己封装的移动端可横向滚动表格组件,可实现滚动加载
自己封装的移动端可横向滚动表格组件,可实现滚动加载,在需要引用的界面 import Table from "@/utils/table.vue";dataList为表格数据。
2023-05-24 15:50:11 1033
原创 浅谈AI绘图工具Midjourney
近期智能AI话题爆火,前有ChatGpt,现又出现了一个AI绘图工具Midjourney,号称没有美术基础的人也能快速上手制作出漂亮的图像。也有不少声音表示设计师都要失业了。AI绘图工具能取代设计师吗?你可以参考以下角度来谈谈你的看法。
2023-04-27 08:16:52 944
js常见经典面试题汇总
2024-02-02
一名合格的前端工程师工作职能
2023-06-10
微信小程序开发基础,需要的同学自行下载
2023-04-19
前端开发规范,需要的同学可自行下载
2023-04-19
前端开发管理规范,需要的同学可自行下载
2023-04-19
前端基础知识css篇,需要的同学自行下载
2023-04-19
前端基础知识h5篇,需要的同学自行下载
2023-04-19
前端es6学习文档,需要的同学可以自取
2023-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人