自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Javascript中NaN、null、undefined的区别

在JavaScript中,NaN、null和undefined都是特殊的值,它们各自有不同的含义和用途。undefined未定义的值和定义未赋值的,不存在的对象属性。在JavaScript中,如果一个变量被声明了,但没有赋值,那么它的值就是undefined。另外,如果一个对象没有某个属性,那么访问这个属性就会返回undefined。在函数内部,如果一个变量没有被声明,那么它就是undefined。使用typeof运算符可以检测一个变量是否为undefined。

2024-03-01 07:56:09 495

原创 Javascript中var、const、let的区别

JavaScript 中varlet和const都是用来声明变量的,但它们在作用域规则、变量提升(Hoisting)、以及可否重新赋值等方面存在显著区别。变量作用域var:具有函数作用域。在函数内部声明的var变量在整个函数体中都是可见的,但在其外部则不可见。同时,在一个函数内部,即使变量声明语句出现在条件或循环等块级结构之后,该变量在整个函数范围内仍可访问,即存在变量提升现象。let和const:具有块级作用域。在任意代码块(如{}内部)中声明的let或const。

2024-02-27 22:36:28 594

原创 js实现数组去重

JavaScript 中实现数组去重的方法有很多种,下面列举一些常见的解决方案。根据实际场景和兼容性需求选择适合的方法。在现代浏览器或支持 ES6+ 特性的环境中,推荐使用Set或Map方式,它们不仅简洁而且性能较好。

2024-02-22 16:14:26 468

原创 前端算法题——字符串中的第一个唯一字符

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:返回 0返回 2// 提示:你可以假定该字符串只包含小写字母。

2024-02-20 18:52:48 422

原创 前端算法题——给定一个整数数组,判断是否存在重复元素。

题目可以理解为如果存在一值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。示例 1:输入: [1,2,3,1]输出: true示例 2:输入: [1,2,3,4]输出: false这题一看就是 计数问题,题目中“如果存在一值在数组中出现至少两次”这句话就告诉我们记录每一个数字出现的次数就能解决问题了。

2024-02-20 18:43:35 661

原创 Javascript实现去掉一组整型数组重复的值

在JavaScript中,你可以使用几种不同的方法来去除数组中的重复值。下面我将为你展示两种常用的方法:使用Set数据结构和使用filter方法。以上三种方法都可以有效地去除数组中的重复值,你可以根据自己的需求和喜好选择适合的方法。通常,使用Set的方法是最简洁和最高效的,尤其是在处理大型数组时。

2024-02-19 08:39:06 534

原创 前端算法题——插入排序

插入排序是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。

2024-02-19 08:32:17 406

原创 工作心得——css让元素居中的方法

今天在制作一个页面样式时,有一个要将卡片组件设置为页面水平居中需求,我采用的方法是将元素设为相对定位后再通过left和transform属性调成水平居中。如何让元素居中是页面设计中必不可少的,下面我将列举出一些常用的元素居中方法,希望能为读者提供思路。文本居中文本水平居中如果你只是想让文本在块级元素水平居中,你可以使用 text-align:center。div {以上方法可能需要根据你的具体需求和上下文进行适当的调整。例如,你可能需要为父元素设置特定的属性,以便子元素能够正确地居中。

2024-02-17 16:00:01 658

原创 3分钟带你了解——MVVM模式

MVVM模式作为一种先进的架构模式,为我们提供了一种将数据、业务逻辑和用户界面分离的解决方案。它强调数据驱动,通过双向数据绑定简化了界面与数据的交互,使得开发者能够更专注于业务逻辑的实现。本文旨在解析MVVM模式的原理和应用,帮助读者更好地理解其核心概念,掌握其在实际项目中的使用方法。MVVM是Model-View-ViewModel的简写,即模型-视图-视图模型。它是MVC(Model-View-Controller)架构的一种改进版,有助于将应用程序的业务和表示逻辑与用户界面(UI)清晰分离。

2024-02-15 10:15:11 1286

原创 前端面试题——二叉树遍历

二叉树遍历在各种算法和数据结构问题中都有广泛的应用,如二叉搜索树、表达式的树形表示、堆的实现等。同时也是前端面试中的常客,掌握好二叉树遍历算法对于一名合格的前端工程师来说至关重要。

2024-02-11 15:24:34 928

原创 前端面试题——JS实现反转链式表

反转单向链表就是将整个单链表的数据进行倒序的过程。例如,如果反转之前的单链表是0->1->2->3,那么反转之后的单链表应该是3->2->1->0。这个操作通常是通过改变链表中每个节点的指针方向来实现的,即让每个节点的指针指向其前一个节点,而不是下一个节点。这种操作不需要开辟新的内存空间,只需要通过改变指针的指向即可完成。

2024-02-11 15:00:08 478

原创 3分钟带你了解——Vue的监听器

前端开发时时常碰到这样的业务,表单中某个值发生修改后调用如发送请求、显示对话框的方法。除了使用组件的回调事件外,我们也可以使用Vue提供的监听器Api来实现这样的需求。

2024-02-08 23:12:55 791

原创 3分钟带你了解Vue3的nextTick()

Vue 实现响应式并不是数据发生变化之后 DOM 立即变化,而是按一定的策略进行 DOM 的更新。简单来说,Vue在修改数据后,视图不会立刻更新,而是等同一事件循环中的所有数据变化完成之后,再统一进行视图更新,nextTick()方法就会在这样的DOM更新循环结束后调用指定的函数。

2024-02-07 09:41:17 7419 1

原创 前端面试题——bind()、apply()、call()的区别和用法

this的指向问题往往是许多前端初学者会碰到的一大难题,按一般的规则来说是调用谁this就指向谁,不过本文并不细究this指向问题,而是三个十分重要的能改变this指向的方法。

2024-02-05 22:23:23 585 1

原创 前端面试题——Vue的双向绑定

双向绑定机制是Vue中最重要的机制之一,甚至可以说是Vue框架的根基,它将数据与视图模板相分离,使得数据处理和页面渲染更为高效,同时它也是前端面试题中的常客,接下来让我们来了解什么是双向绑定以及其实现原理。vue的双向绑定,即数据与视图的响应式设计。具体表现为:View 的改变能实时让Model发生变化,而 Model 的变化也能实时更新 View。而单项数据绑定,所有数据只有一份,一旦数据变化,就去更新页面(只有data-->DOM,没有DOM-->data)。

2024-02-04 10:44:24 1672 1

原创 Vue3的计算属性——computed

在日常开发中我们可能会有这样的需求,当页面中某个变量发生改变时要同时修改另一个变量的值。一般我们会通过监听器或者回调事件的方式来实现同步更改,但是如果修改次数过多,内容复杂时就会导致代码冗余。为了解决这一问题,Vue3提供了 computed 计算属性。computed属性在Vue3中是一个非常重要的响应式特性。它可以根据其他响应式数据的变化自动更新自身的值,无需手动操作。computed属性可以接收一个函数作为参数,这个函数会在需要时被调用,并使用其他响应式数据的值进行计算。

2024-02-03 09:01:41 4115 1

原创 Vue3中ref与reactive的用法详解——reactive

在Vue2中的响应式数据需要放入 data 函数,Vue2 会遍历 data 中的所有属性,使用的Object.defineProperty 把每个 property 全部转为 getter/setter,getter 用来收集依赖,setter 用来执行 notify,发布更新事件。而在Vue 3的响应式系统中使用了ref和reactive 这两个核心概念,它们为开发者提供了处理响应式数据的不同方式。理解它们的特性和区别对于构建灵活、高效的Vue应用至关重要。

2024-02-01 12:42:43 636 1

原创 Vue3中ref与reactive的用法详解——ref

在Vue2中的响应式数据需要放入 data 函数,Vue2 会遍历 data 中的所有属性,使用的Object.defineProperty 把每个 property 全部转为 getter/setter,getter 用来收集依赖,setter 用来执行 notify,发布更新事件。而在Vue 3的响应式系统中使用了ref和reactive 这两个核心概念,它们为开发者提供了处理响应式数据的不同方式。理解它们的特性和区别对于构建灵活、高效的Vue应用至关重要。

2024-01-31 21:26:11 686 1

原创 前端面试题——HTML5的新特性

为了更好地处理今天的互联网应用,HTML5添加了很多新元素及功能,比如: 图形的绘制,多媒体内容,更好的页面结构,更好的形式 处理,和几个api拖放元素,定位,包括网页 应用程序缓存,存储等SVG 是一种使用 XML 描述 2D 图形的语言,在放大或改变尺寸的情况下其图形质量不会有损失,当svg对象的属性发生变换时,浏览器会重新渲染该图形。当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。

2024-01-30 21:37:53 2258 1

原创 前端面试题——常见的HTML全局属性(global attribute)有哪些?

什么是全局属性?全局属性是指所有 HTML 元素共有的属性;它们可以用于所有元素,即使属性可能对某些元素不起作用。

2024-01-28 11:08:45 773 1

原创 前端面试题——0.1+0.2为什么不等于0.3?

0.1+0.2=0.3在我们的日常生活中是简单到不用动脑子就能得出的等式。但是在计算机的世界中恐怕并非如此,你或许在编写代码时见过0.1+0.2=0.30000000000000004,是计算机算错了吗?让我们来探究其背后的原理。

2024-01-28 10:13:05 335 1

原创 Javascript实现对象数组根据某一元素的值进行排序

在开发过程中有时需要前端对后端传来的对象列表数据根按某项元素值进行排序以实现一些业务。下面是一个可以满足该需求的高阶函数,attr为数组排序是依据对象的哪一个属性,rev为升序还是降序,默认为升序,true表示升序,false表示降序。//第二个参数没有传递 默认升序排列rev = 1;

2024-01-26 19:08:44 527 1

原创 el-tree树形列表实现单选效果

今天开发的时候遇到了这样一个业务需求:页面中有一个表示不同公司部门下的员工的树形列表,要求选择员工后录入表单主要负责人字段,因此需要实现el-tree的单选效果,但是el-tree自身并没有直接支持单选的属性,查阅了文档和其他博客后我找到了解决方法。

2024-01-24 19:04:21 1263 1

原创 Javascript常见的字符串方法

toLowerCase() 方法用于把字符串转换为小写。toUpperCase() 方法用于把字符串转换为大写。该方法用于删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等其他空白符等。该方法用于拼接两个及以上的字符串,该方法会产生新字符串,但不会改变原数组。该方法可以找到指定字符在字符串中第一次出现的位置,如果没有找到则返回-1。该方法可以返回字符串中指定位置的字符。

2024-01-22 19:04:25 351

原创 解决element中el-select与el-input的输入框宽度不一致的问题

当它们一起使用时,一般select长度是默认的,会比input短,只需要设置其宽度是100%即可。同理,el-date-picker也是类似的,先设置class名称。然后设置其宽度是100%。

2024-01-20 16:45:43 981

原创 Javascript中不改变原数组的方法(2)

不改变原数组的方法有11种,它们分别是(concat, map, filter, join, every, some, indexOf, slice, forEach, reduce, reduceRight),本文将介绍后面5个。

2024-01-20 09:33:47 346

原创 Javascript中不会改变原数组的方法(1)

不改变原数组的方法有11种,它们分别是(concat, map, filter, join, every, some, indexOf, slice, forEach, reduce, reduceRight),本文先介绍前6个。

2024-01-19 09:16:03 426 1

原创 js的数组的相关方法(改变数组)

【代码】js的数组的相关方法(改变数组)

2024-01-18 09:31:57 357

原创 node版本切换神器——nvm

nvm全英文也叫node.js version management,是一个nodejs的版本管理工具。

2024-01-16 16:41:59 374 1

原创 el-select实现鼠标悬浮在选项上显示其他项的信息

【代码】el-select实现鼠标悬浮在选项上显示其他项的信息。

2024-01-16 15:25:06 863 1

原创 前端根据url下载文件

link.download = "文件.pdf";//在资源下载完成后 清除 占用的缓存资源。// 这里是将链接地址url转成blob地址,// 下载文件的名称及文件类型后缀。

2024-01-16 14:50:09 554

空空如也

空空如也

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

TA关注的人

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