- 博客(52)
- 收藏
- 关注
原创 Javascript:获取、设置复选框的勾选状态
/ 获取复选框的勾选状态。// 设置复选框的勾选状态。// 1. 获取元素。获取复选框的勾选状态。设置复选框的勾选状态。
2024-07-12 22:03:30
141
原创 【JavaScript】JS执行机制--同步与异步
同步任务放在执行栈中执行,异步任务由异步进程处理放到任务队列中,执行栈中的任务执行完毕会去任务队列中查看是否有异步任务执行,由于主线程不断的重复获得任务、执行任务、再获取任务、再执行,所以这种机制被称为事件循环( event loop)。单线程的特点是所有任务都需要排队进行,前一个任务结束,才会执行后一个任务。一旦执行栈中的所有同步任务执行完毕,系统就会按次序读取任务队列中的异步任务,于是被读取的异步任务结束等待状态,进入执行栈,开始执行。JavaScript的同步任务在主线程中执行,形成一个执行栈。
2024-07-11 21:49:59
114
原创 JavaScript实现跳转的方法
window.location.replace() 方法也会加载新的文档,但与 window.location.assign() 不同的是,它不会在历史记录中创建新的记录。window.location.assign() 方法与直接设置 window.location.href 类似,用于加载新的文档。在实际应用中,确保跳转行为是由用户的某些操作(如点击按钮或链接)触发的,而不是自动执行的,以避免对用户体验造成干扰。通过设置 window.location.href 属性,可以跳转到新的URL。
2024-07-11 21:48:09
203
原创 js循环有几种
对于根据条件判断是否继续循环的情况,可以使用while循环或do...while循环。运用场景:当需要在满足某个条件的情况下重复执行某段代码时,可以使用while循环。do...while循环与while循环类似,但不同之处在于它至少会执行一次循环体,然后再检查条件。while循环在条件为真时执行一段代码,直到条件不再满足为止。条件:在每次循环体执行完毕后检查,如果条件为真,则继续执行循环体;条件:在每次循环开始前检查,如果条件为真,则执行循环体;条件:在每次循环开始前检查,如果条件为真,则执行循环体;
2024-07-10 21:06:24
162
原创 css长度单位
像素 pixel 的缩写,即电子屏幕上的1个点,以分辨率为 1024 * 768 的屏幕为例,即水平方向上有 1024 个点,垂直方向上有 768 个点,则 width:1024px 即表示元素的宽度撑满整个屏幕。通常百分比都是相对于父元素的 content box 计算,所以父元素必须有显式的值,若父元素 height 为 auto ,则百分比值将完全失效!随屏幕分辨率不同,1px 的大小也不同,所以严格来说,px 也是相对单位,但不考虑屏幕分辨率时,也可以把 px 当作绝对单位来看待。
2024-07-07 21:26:01
202
原创 js实现复制功能
但是需要注意的是,document.execCommand在一些现代浏览器中已经被弃用,所以更推荐使用navigator.clipboard.writeText。如果复制失败(例如,用户拒绝了剪贴板权限),会打印一条错误消息。如果你需要支持旧的浏览器,可能需要使用document.execCommand,但请注意这个方法已经过时,并可能在未来的浏览器版本中被移除。请注意,由于浏览器的安全限制,这个操作可能需要用户的明确许可,特别是在一些移动设备或隐私设置较严格的浏览器中。
2024-07-02 22:00:34
374
原创 JavaScript 地址信息与页面跳转
在JavaScript中,处理地址信息和页面跳转通常涉及到两种主要的技术:使用window.location对象和创建超链接(<a>标签)。window.location.protocol:返回URL的协议部分(如 "http:" 或 "https:")。window.location.hash:返回URL中#符号后面的部分(通常用于页面内的导航)。使用 window.location.href 进行页面跳转是最常见和直接的方法。window.location.href:返回完整的URL。
2024-06-29 20:36:15
196
原创 什么是symbol?
使用Symbol()函数来创建Symbol值,可以传递一个可选的字符串参数作为描述(description),但这个描述并不会影响Symbol值的唯一性。综上所述,ES6中的Symbol是一种独一无二且不可变的基本数据类型,主要用于解决命名冲突问题,并提供了一种新的方式来定义对象的属性名。由于每个Symbol都是唯一的,因此可以作为对象的属性名,用于定义对象的非字符串类型的属性,从而避免属性名冲突。在使用迭代器时,可以使用Symbol.iterator作为对象的属性名,来定义迭代器的行为。
2024-06-27 21:57:34
251
原创 解构赋值及其原理
需要注意的是,解构赋值是一种语法糖,它实际上是调用了对象的 Symbol.iterator 方法(对于数组)或 Symbol.iterator 或 Symbol.unscopables 方法(对于对象),然后按照匹配规则将值分配给变量。在这个例子中,我们从对象 { x: 1, y: 2 } 中解构出了属性 x 和 y 的值,然后将它们分别赋给变量 x 和 y。在上面的例子中,我们从数组 [1, 2] 中解构出了值 1 和 2,然后将它们分别赋给变量 a 和 b。
2024-06-27 21:56:40
190
原创 什么是深拷贝,什么是浅拷贝
这意味着如果对象的某个属性值是另一个对象的引用,那么浅拷贝后,原对象和新对象将共享这个引用的对象。在JavaScript中,没有内置的直接进行深拷贝的函数,但你可以使用JSON.parse(JSON.stringify(obj))(注意这个方法有局限性,比如不能处理函数、循环引用、特殊类型等)或递归遍历对象的每个属性来实现深拷贝。深拷贝会复制对象的所有属性,并递归地复制其引用的对象,直到最底层的基本数据类型。浅拷贝只复制引用,而深拷贝会递归地复制引用的对象,直到最底层。
2024-06-26 21:40:34
228
原创 JS懒加载
懒加载(Lazy Loading)是一种在网页加载过程中延迟加载某些资源的技术。// 获取所有需要懒加载的元素。// 图片底部距离页面顶部的距离。使用懒加载可以有效降低网页的初始加载时间,提升用户的浏览体验。当图片位于浏览器可见区域时才加载,避免了一次性加载过多的图片资源。// 加载完成后移除lazy class。// 图片距离页面顶部的距离。// 如果图片底部位于页面可见区域内,则加载图片。
2024-06-20 21:13:23
311
原创 如何在js中实现修改url参数而不刷新页面
在上面的代码中,首先使用URL构造函数获取当前URL,然后创建一个URLSearchParams对象来处理URL参数。最后,将修改后的参数设置回URL中,并使用history.replaceState()方法将新的URL应用到浏览器历史记录中,从而实现修改URL参数而不刷新页面。原文链接:https://blog.csdn.net/2302_80798583/article/details/139310086。// 使用history.replaceState()方法修改URL,而不刷新页面。
2024-06-19 21:48:14
176
原创 JS几种拼接字符串的方法
1、在 JavaScript 中,使用字符串链接有几种方式:连接符(+)、反引号(`)、join()、concat()。反单引号怎么打出来:将输入法调整为英文输入法,单击键盘上数字键1左边的按键(tab键上面的就是)。注释:concat() 方法不会修改原字符串的值,与数组的 concat() 方法操作相似。该方法没有改变原有字符串,但是会返回连接两个或多个字符串新字符串。ES6中新增的字符串方法,可以配合反单引号完成拼接字符串的功能。String 字符串值,表示数组值,由指定的分隔符分隔。
2024-06-15 21:40:12
307
原创 js作用域
在 foo 函数内部,又重新定义了一个变量 a 并赋值为 2,此时函数内的 a 会覆盖外部全局作用域中的 a 的值,所以在函数内打印出的是函数内局部定义的 2。因为使用 var 声明的变量存在变量提升,即使在 if 语句块中声明,实际上相当于在整个作用域的开头声明了,所以在 if 语句块外也能访问到。在这个例子中,当执行 foo(1) 时,在 foo 函数内部访问到了外部定义的变量 b,输出结果为 3,说明函数可以访问到其外部作用域中定义的变量。在js中的作用域一共分为三种,全局域、函数域和块级作用域。
2024-06-15 21:35:45
224
原创 JS基础:输出信息的5种方式详解
由于它会打断用户体验,所以只是在新手期或者做项目时排查疑难问题阶段需要使用,在正常项目下通常都会以更好体验的,更符合项目的UI形式出现。就像我们有不同的方式来表达自己的想法一样。不同的浏览器可能有不同的打开方式,一般可以通过按 F12 键或右键点击页面选择“检查”来打开。首先,英文不好的,可以在浏览器预览时候,按 F12,按如下 2 张图的顺序,把开发者工具,设置成中文。适用于获取用户的输入,例如在表单中获取用户的姓名或密码。主要用于开发调试,输出的信息不会在页面上显示,而是在浏览器的控制台中。
2024-06-14 20:17:13
418
原创 JavaScript 删除数组中指定元素(5种方法)
该方法接受两个参数,第一个参数指定要删除的元素的位置,第二个参数指定要删除的元素个数。除了使用 splice() 方法,我们还可以使用 filter() 方法来删除数组中的元素。如果我们想删除数组中的特定元素,可以使用这些方法与 indexOf() 方法结合使用。我们可以根据需求选择适合自己的方法来删除数组中的元素。slice() 方法是一个纯函数,它不会改变原始数组,而是返回一个新的数组,该数组包含从开始到结束(不包含结束)的元素。ES6 中的 filter() 方法也可以用于删除数组中的元素。
2024-06-14 20:15:05
278
原创 多个p标签,并让div“flex”布局,且单行溢出隐藏
一开始,我是让div包裹多个p标签,并让div“flex”布局,且单行溢出隐藏,可是发现当父元素或当前元素有flex时,text-overflow: ellipsis;由于我现在写的功能,p标签是v-html解析出来的,无法得知具体有多少个p标签,因此都不适用。大多数解决办法都是,不要flex,或者给div下的每个p标签单独设置样式。我想实现的功能是多个p标签一行展示,溢出div宽度时,隐藏余下内容…
2024-06-08 20:09:46
146
原创 电话号码正则表达式 代码 javascript+html,JS正则表达式判断11位手机号码
来判断是否为11位有效电话号码。正则表达式:var myreg=/^[1][3,4,5,7,8][0-9]{9}$/;2--第二位可为3,4,5,7,8,中的任意一位;这个表达式的意思是:1--以1为开头;3--最后以0-9的9个整数结尾。实现代码:// 判断是否为手机号。JavaScript中可以使用。// 判断是否为电话号码。
2024-06-05 21:41:22
273
原创 JS 删除数组元素( 5种方法 )
/ 输出: [1, 2, undefined, 4, 5]// 输出: [1, 2, 'a', 'b', 4, 5]直接设置数组的 length 属性可以缩短数组,所有索引大于新 length 值的元素都会被删除。// 输出: [1, 2, 4, 5]// 输出: [1, 2, 3]// 输出: [1, 2]myArray.splice(2, 1);// 删除索引为2的元素。pop() 和 shift() 分别用于删除末尾和头部的单个元素。splice() 适合删除任意位置的元素,且可以一次删除多个。
2024-06-04 21:32:59
760
原创 HTML布局
方法四:双伪元素法---给父盒子添加:before和:after伪元素,设置clear:both---推荐使用---即 可以清除浮动干扰,同时又能解决父盒子高度塌陷的问题。方法三:单伪元素法---给父盒子添加:after伪元素,设置clear:both---推荐使用。1.3 行内块元素----不独占一行----从左到右排列,遇到边界换行。1.2 行内元素----不独占一行----从左到右排列,遇到边界换行。1.1 块元素----独占一行----从上到下排列。
2024-06-02 20:46:24
481
原创 JavaScript事件监听
最后,我们使用addEventListener方法给按钮添加了一个事件监听器,当按钮被点击('click'事件)时,就会执行handleClick函数。在JavaScript中,事件监听是一种重要的机制,用于在特定事件发生时执行特定的代码。这些事件可以是用户的交互行为(如点击、鼠标移动等),也可以是浏览器的一些特定行为(如页面加载完成、窗口大小改变等)。除了click事件,还有许多其他类型的事件可以使用,比如mouseover(鼠标移动到元素上)、keydown(按下键盘键)、load(页面加载完成)等。
2024-05-30 21:27:15
429
原创 参数传递方法
使用window.location.assign()进行页面跳转:与window.location.href类似,也可以用来进行页面跳转。在目标页面,使用localStorage.getItem()或sessionStorage.getItem()方法获取参数值。在源页面,使用localStorage.setItem()或sessionStorage.setItem()方法存储参数值。使用window.location.href进行页面跳转:在源页面使用该方法,并指定目标页面的URL来实现跳转。
2024-05-29 21:23:35
358
原创 函数的定义、调用、箭头函数、闭包
闭包就是在一个函数内部创建另一个函数,让你可以在一个内层函数中访问到其外层函数的作用域。又或者说,闭包就是能够读取其他函数内部变量的函数,本质上函数内部变量的函数。闭包:因为作用域的存在,函数内部可以直接读取全局变量,而函数内部无法读取函数内部的局部变量。优点:保证函数不受外界干扰,实现封装,避免命名冲突,可以在内存中保存函数前两,充当缓存。第四种: var 函数 = function(){函数体}fn('hello')()//调用内部函数。第一种:function 函数名(){函数体}
2024-05-25 20:28:34
250
原创 flex布局
align-content适用于换行(多行)的情况下(单行情况下无效),可以设置上对齐、下对齐、居中、拉伸以及平均分配剩余空间等属性值。默认情况下,项目都排在一条线上(即flex布局中,默认的子元素是不换行的,如果装不开,会缩小子元素的宽度,放到父元素里面)设置子项在侧轴上的排列方式并且只能用于子项出现换行的情况(多行,即flex-wrap: wrap),在单行下是没有效果的。主轴和侧轴是会变化的,就看flex-direction设置谁为主轴,剩下的就是侧轴。而我们的子元素跟着主轴来排列的。
2024-05-25 20:24:07
347
原创 JavaScript 添加和删除元素
另外,对于更复杂的DOM操作,你可能会发现使用如jQuery这样的库可以简化很多工作。jQuery提供了诸如 .append(), .remove(), .empty() 等方法,这些方法可以更简洁地处理DOM元素的添加和删除。请注意,使用 innerHTML 来添加或删除元素可能会导致XSS(跨站脚本)攻击,特别是当你处理用户提供的内容时。因此,在涉及用户输入的情况下,应该使用更安全的DOM操作方法,或者使用适当的转义函数来清理输入。你可以创建一个新的元素,然后将其添加到DOM树中。
2024-05-24 21:33:41
409
原创 什么是选项卡
例如,在Microsoft Excel中,选项卡被用作功能区的导航,包含了“剪贴板”、“字体”、“对齐方式”、“数字”、“样式”、“单元格”和“编辑”等七个组,帮助用户更好地管理和操作数据。在浏览器中,选项卡是常见的一个功能,比如Internet Explorer和Microsoft Edge都使用了选项卡浏览,用户可以通过点击或者拖动来在不同的网页之间进行切换。浏览器中的网页浏览:在浏览器中,选项卡被广泛用于同时打开多个网页,用户可以通过单击不同的选项卡来切换这些网页。编写JavaScript代码。
2024-05-24 21:00:15
481
原创 avaScript如何实现 选项卡功能
首先我们这里有五个li,获取过来的li元素是以伪数组的形式输出的,所以我们可以用for循环来遍历这个伪数组为每个li添加单击事件,接下来就是写函数了,这里就要用到上面所讲的排他思想,试想我们每点击一次li都像是点击上面的按钮一样,我们用for循环去掉他的样式,然后再给当前点击的li加上样式,这样的话,所点击的li就会有红色背景和白色的字了,但是下面的内容还是不变的。
2024-05-18 18:21:48
760
原创 javascript主要特点有哪些,简单描述javascript的特点
/ alert和prompt会在页面渲染前执行。所以先执行alert和promt,再执行document.write。<input type="button" value="按钮" οnclick="alert('点击时弹出的显示框')">操作浏览器,比如页面弹窗,检测窗口宽度、储存数据到浏览器等。运行程序,页面没内容,控制台也没输出。运行在客户端的脚本语言,由JS引擎(如Chrome的V8)进行解析和执行。// 输出方式一: 向body内输出内容。// 输出方式二: 向控制台内输出内容。
2024-05-17 22:25:27
390
原创 js---三元表达式详解
以上代码的意思是:当flag的值为true时,返回一个匿名函数,并输出字符串'flag is true.';以上代码的意思是:当水果类型为苹果时,如果尺寸为big,返回10元,否则返回8元;通过以上示例,我们可以看到在JS中,三元表达式具有非常高的灵活性和可扩展性,可以用于各种场合,有效地提高代码的可读性和开发效率。以上代码的意思是:如果判断结果为真,则返回字符串'yes';其中“条件”可以是任意的JS表达式,“结果1”和“结果2”也是任意JS表达式,可以是字符串、数字、函数等任意类型的值。
2024-05-17 22:22:40
537
原创 js中的对象
属性是与对象相关联的变量,而方法则是与对象相关联的函数。通过使用对象,我们可以将相关的数据和功能组合在一起,以创建更加灵活和可维护的代码。JavaScript对象是一种强大而灵活的数据结构,它允许我们以组织和管理数据的方式编写更好的代码。通过理解和熟练使用对象,您可以提高JavaScript编程的效率和质量。它们是无处不在的,几乎所有的东西都可以被视为一个对象。对象还可以具有嵌套的结构,即对象中包含其他对象。的属性,它是一个数组,每个元素都是一个具有。属性是一个嵌套的对象,具有。
2024-05-16 21:48:37
315
原创 探索JavaScript函数基础
在JavaScript中,函数可以通过function关键字来定义。函数定义的一般语法如下:复制代码// 函数体// 可以包含一系列语句和逻辑// 可选的返回值其中,functionName是函数的名称,parameters是函数的参数列表,函数体是一系列语句和逻辑的集合,return语句可选,用于指定函数的返回值。本文介绍了JavaScript函数的基础知识,包括函数的定义、调用、参数和返回值等内容。
2024-05-11 23:25:07
257
原创 探索JavaScript数组:基础
JavaScript数组是编程中不可或缺的一部分,它提供了丰富的方法和技巧,可以满足各种需求。通过深入理解数组的基础知识和常用方法,以及掌握一些高级技巧,您将能够更加灵活地应用数组,编写出更加优雅和高效的JavaScript代码。
2024-05-11 23:23:41
229
原创 什么是 While 循环?
While 循环是一种重要的迭代控制结构,它允许我们根据条件重复执行代码块,直到条件不再满足为止。通过本文的介绍,希望读者能够更深入地理解 While 循环的原理和应用,并能够灵活运用它解决实际编程任务。
2024-05-10 21:23:14
241
原创 什么是 for 循环?
通过灵活使用初始化表达式、条件表达式和递增表达式,您可以轻松地控制循环的行为。for 循环由三个可选部分组成:初始化表达式、条件表达式和递增表达式。条件表达式在每次循环迭代前都会被求值。如果省略条件表达式,则将无限循环执行循环体,直到遇到 break 或 return 语句为止。初始化表达式在循环开始前执行,并且通常用于初始化计数器或声明变量。在 for 循环中,初始化表达式、条件表达式和递增表达式都是可选的,但分号是必需的。如果省略初始化表达式和递增表达式,则需要确保在循环外部定义和更新计数器变量。
2024-05-09 21:57:49
506
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人