
javascript
文章平均质量分 63
蓝斑.json
梦未完结,大寒尚有蝉
展开
-
JavaScript中数组相关
18. Array.prototype.every(): 检测数组中的所有元素是否都满足指定条件,如果都满足返回true,否则返回false。21. Array.prototype.findIndex(): 返回数组中满足指定条件的第一个元素的索引,如果找不到则返回-1。7. Array.prototype.splice(): 删除、替换或插入数组中的元素,并返回被删除的元素组成的新数组。15. Array.prototype.map(): 创建一个新数组,其结果是对原数组中的每个元素进行指定操作后的值。原创 2024-03-04 16:51:29 · 315 阅读 · 0 评论 -
ES6对象新增了哪些扩展?
ES6允许在对象字面量中更简洁地定义属性和方法。您可以省略属性名称和冒号,如果属性名和变量名相同,可以直接使用变量名作为属性名。ES6(ECMAScript 2015)为JavaScript中的对象引入了一些新的扩展功能。: ES6引入了Symbol数据类型,它是一种唯一且不可改变的数据类型,可以用作对象属性的键。这些是ES6中引入的一些主要对象扩展功能。方法用于将一个或多个源对象的属性复制到目标对象。: 您可以在对象字面量中使用表达式作为属性名,这使得属性名更灵活。方法用于设置对象的原型。原创 2024-01-25 09:08:24 · 709 阅读 · 0 评论 -
ES6中数组新增了哪些扩展?
ES6(ECMAScript 2015)为JavaScript中的数组引入了许多新的扩展功能。方法允许您将类似数组的对象或可迭代对象转换为真正的数组。) 允许您在数组字面量、函数调用或其他表达式中展开数组,以便将数组的元素合并到新的数组中。: 模板字符串允许您插入变量和表达式到字符串字面量中,这对于创建动态的数组内容非常有用。属性,您可以更容易地自定义数组方法的行为,以便它们返回与原始数组相同类型的新数组。方法允许您将数组的一部分复制到另一部分,同时保留原始数组的长度。方法用于创建具有给定参数的新数组。原创 2024-01-25 09:01:38 · 659 阅读 · 0 评论 -
JavaScript中的面向对象
通过对象、构造函数、原型链和继承,你可以更有效地组织和管理你的代码,并实现复杂的程序结构。JavaScript 中的面向对象编程(OOP)是一种编程范式,它允许你使用对象来组织和管理代码。:JavaScript 中的对象是属性的集合,每个属性都有一个键和一个值。对象可以用来表示现实世界中的事物,如人、汽车、书等。:JavaScript 中的对象可以继承其他对象的属性和方法。:JavaScript 支持原型继承,你可以创建子类并继承父类的属性和方法。通过构造函数,你可以定义对象的属性和方法,然后使用。原创 2024-01-24 08:36:41 · 425 阅读 · 0 评论 -
面向对象与面向过程有什么区别?
*比如你做一个计算器程序,你的函数就要确保处理的是合理的数据,这样最起码加减乘除四个函数里,你就都要写对参数进行检测的代码,写四遍或者复制粘贴四遍不会很烦,但多了你就痛苦了,而且因为这些检测代码是跟你的加减乘除函数的本意是无关的,却一定要写在那里,使代码变得臃肿不堪、意图模糊,不能直观地看出其用意。面向过程的设计思路就是首先分析问题的步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8、返回步骤2,9、输出最后结果。,函数们的行为是固定的。原创 2024-01-24 08:30:35 · 1030 阅读 · 0 评论 -
在vue中如何使用: new Notification
注意:由于通知相关的API设计有限制,通常只能在用户主动交互(例如点击按钮)的事件处理程序中请求授权和创建通知。在非用户主动交互的情况下尝试创建通知(例如在组件的生命周期钩子中)可能会被浏览器阻止。用户授权:为了向用户显示通知,需要获得用户的授权。API在现代浏览器中是可用的,但部分浏览器可能存在兼容性问题。来创建通知,传递通知的标题和选项。根据用户的授权情况,将决定是否创建通知。请参考浏览器的相关文档以及适当处理和尊重给用户的通知权限和体验。在Vue中,你可以在组件的方法中调用。在Vue中,你可以使用。原创 2024-01-23 08:16:12 · 968 阅读 · 0 评论 -
Javascript本地存储的方式有哪些?区别及应用场景?
javaScript。Cookie,类型为「小型文本文件」,指某些网站为了辨别用户身份而储存在用户本地终端上的数据。是为了解决HTTP无状态导致的问题原创 2024-01-22 08:33:53 · 1212 阅读 · 0 评论 -
JavaScript 中内存泄漏的几种情况
引用未被释放的对象是一种常见的内存泄漏情况。在JavaScript中,如果有对某个对象的引用,而后没有显式地释放这个引用,该对象就无法被垃圾回收机制回收。原创 2024-01-22 08:32:10 · 1919 阅读 · 0 评论 -
JavaScript其实还有一种基本数据类型你知道吗?Symbol 是什么意思?Symbol是什么?一篇文章弄懂
创建的 Symbol 值都是唯一的,即使两个 Symbol 值的描述字符串相同,它们仍然是不相等的。这意味着可以将 Symbol 值用作对象属性名,确保属性名的唯一性,避免命名冲突。需要注意的是,由于 Symbol 值的唯一性特性,它们在进行相等性比较时始终返回 false。即使两个 Symbol 值的描述字符串相同,它们仍然是不相等的。但是,由于 Symbol 值的唯一性,其他代码很难意外覆盖或访问特定的 Symbol 属性。Symbol 值是不可变且唯一的,可以用作对象的属性名,以确保属性名的唯一性。原创 2023-12-29 08:22:44 · 544 阅读 · 0 评论 -
高级编程。JavaScript中有哪些类型转换机制?
前面我们讲到,JSundefinednullbooleanstringnumbersymbolobject但是我们在声明的时候只有一种数据类型,只有到运行期间才会确定当前类型let x = y?1 : a;上面代码中,x的值在编译阶段是无法获取的,只有等到程序运行时才能知道虽然变量的数据类型是不确定的,但是各种运算符对数据类型是有要求的,如果运算子的类型与预期不符合,就会触发类型转换机制强制转换(显示转换)自动转换(隐式转换)原创 2024-01-20 08:46:03 · 1083 阅读 · 0 评论 -
高级编程,JavaScript笔记-字符串的常用方法
我们也可将字符串常用的操作方法归纳为增、删、改、查,需要知道字符串的特点是一旦创建了,就不可变。这里的删的意思并不是说删除原字符串的内容,而是创建字符串的一个副本,再进行操作。这三个方法都返回调用它们的字符串的一个子字符串,而且都接收一或两个参数。从字符串开头去搜索传入的字符串,并返回位置(如果没找到,则返回 -1 )这里增的意思并不是说直接增添内容,而是创建字符串的一个副本,再进行操作。这里改的意思也不是改变原字符串,而是创建字符串的一个副本,再进行操作。把字符串按照指定的分割符,拆分成数组中的每一项。原创 2024-01-20 08:43:46 · 464 阅读 · 0 评论 -
记录一下JavaScript数组的常用方法,及代送
传入三个参数,分别是开始位置,要删除元素的数量,要插入的任意多个元素,返回删除元素的数组,对原数组产生影响。首先会创建一个当前数组的副本,然后再把它的参数添加到副本末尾,最后返回这个新构建的数组,不会影响原始数组。传入三个参数,分别是开始位置、0(要删除的元素数量)、插入的元素,返回空数组。传入两个参数,分别是开始位置,删除元素的数量,返回包含删除元素的数组。方法接收任意数量的参数,并将它们添加到数组末尾,返回数组的最新长度。对数组每一项都运行传入的函数,返回由每次函数调用的结果构成的数组。原创 2024-01-19 10:05:14 · 400 阅读 · 0 评论 -
高级编程JavaScript中的数据类型?存储上能有什么差别?
在JavaScript两种类型的区别是:存储位置不同。原创 2024-01-19 10:02:04 · 1055 阅读 · 0 评论 -
你是怎么处理vue项目中的错误的?
另外,如果任何被覆盖的钩子或处理函数返回一个 Promise 链 (例如 async 函数),则来自其 Promise 链的错误也会被处理。中,则是定义了一套对应的错误处理规则给到使用者,且在源代码级别,对部分必要的过程做了一定的错误处理。此钩子会收到三个参数:错误对象、发生错误的组件实例以及一个包含错误来源信息的字符串。从 2.2.0 起,这个钩子也会捕获组件生命周期钩子里的错误。是 2.5.0 新增的一个生命钩子函数,当捕获到一个来自子孙组件的错误时被调用。时,被捕获的错误会通过。原创 2024-01-18 08:04:48 · 709 阅读 · 0 评论 -
高级编程JavaScript。js实现 Notifications 浏览器消息通知
Notifications 用户授权显示通知是通过浏览器内部的一个对话框完成的。向用户请求通知权限。这个对象有一个 requestPemission() 方法,该方法返回一个期约,用户在授权对话框上执行操作后这个期约会解决。"granted"值意味着用户明确授权了显示通知的权限。JavaScript API 触发页面外部的浏览器行为,而且都允许页面处理用户与对话框或通知弹层的交 互。Progressive Web Application) 通过触发通知可以在页面不活跃时向用户显示消息,看起来就像原生应用。原创 2024-01-15 20:05:27 · 2538 阅读 · 1 评论 -
高级JavaScript。同步和异步,阻塞和非阻塞
同步+阻塞同步+非阻塞异步+阻塞异步+非阻塞在当什么是同步和异步,阻塞与非阻塞的概念还没弄清楚之前,更别提上面这些组合术语了,只会让你更加困惑。原创 2024-01-13 10:53:05 · 576 阅读 · 0 评论 -
高级JavaScript。如何用JavaScript手撸一个富文本编辑器?
使用- 富文本编辑基本的技术就是在空白HTML文件中嵌入一个iframe。通过designMode属性,可以将这个空白文档变成可以编辑的,实际编辑的则是元素的HTML。designMode属性有两个可能的值:"off"(默认值)和"on"。设置为"on"时,整个文档都会变成可以编辑的(显示插入光标),从而可以像使用文字处理程序一样编辑文本,通过键盘将文本标记为粗体、斜体,等等。作为iframe源的是一个非常简单的空白HTML页面。原创 2024-01-13 10:48:37 · 1453 阅读 · 0 评论 -
什么是虚拟DOM?如何实现一个虚拟DOM?说说你的思路
虚拟 DOM ()这个概念相信大家都不陌生,从React到Vue,虚拟DOM为这两个框架都带来了跨平台的能力(和Weex实际上它只是一层对真实DOM的抽象,以JavaScript对象 (VNode节点) 作为基础的树,用对象的属性来描述节点,最终可以通过一系列操作使这棵树映射到真实环境上在Javascript对象中,虚拟DOM表现为一个Object对象。并且最少包含标签名 (tag)、属性 (attrs) 和子元素对象 (children) 三个属性,不同框架对这三个属性的名命可能会有差别创建虚拟。原创 2024-01-12 11:44:49 · 1255 阅读 · 0 评论 -
JavaScript中这些事件(event)类型你都知道吗?
JavaScript中有许多不同类型的事件,用于监听和响应Web页面上的各种交互和用户动作。以下是一些常见的JavaScript事件类型:clickmouseovermouseoutmousedownmouseupkeydownkeyupkeypresssubmitchangefocusblurloadresizescrollplaypauseendedcanplayerrorofflineonline要使用这些事件,您可以使用JavaScript为元素添加事件监听器,然后定义要执行的函数。原创 2024-01-12 11:32:28 · 1755 阅读 · 0 评论 -
JavaScript中最重要的一环之一,ajax发送请求!!
同步的 XMLHttpRequest (async = false),因为 JavaScript 将停止执行直到服务器响应就绪。如果服务器繁忙或缓慢,应用程序将挂起或停止。在 AJAX 之前,此操作可能会导致应用程序挂起或停止。你也会在更老的 JavaScript 代码中看到同步请求。在上面的例子中,您可能会获得一个缓存的结果。通过 XMLHttpRequest 对象,您可以定义当请求接收到应答时所执行的函数。如需向服务器发送请求,我们使用 XMLHttpRequest 对象的。如需执行同步的请求,请把。原创 2024-01-11 08:58:43 · 699 阅读 · 0 评论 -
高级JavaScript中的闭包、防抖和节流,到底是怎么样的?
从语法结构来说 闭包是一种JS特有的函数嵌套结构1. 函数嵌套(至少有两个函数)2. 内层函数中使用了外层函数的变量或参数3. 内层函数被返回到外部在外部使用1. 保护具有共享意义的变量2. 隔离作用域 避免作用域污染3. 为变量提供对外访问接口1. 概念复杂 不易理解2. 占用过多资源(内存) 大量使用不利于代码优化闭包作用域中的值 不会随垃圾回收机制销毁;销毁闭包的方式是将闭包的函数赋值为null。原创 2024-01-10 09:19:57 · 614 阅读 · 1 评论 -
高级JavaScript中最有趣的原型、原型链?
每个对象都拥有一个指针(__proto__),固定指向该对象构造函数的原型对象;封装:通俗的来说就是封装函数,通过私有化的变量和私有化的方法,不让外部访问到。多态: 多态就是通过对传递的参数判断来执行逻辑,即可实现一种多态处理机制。1).通过原型prototype对象实例化实现此类的继承;2).直接实例化对象复制,完全复制父类对象。公有属性,指向同一个内存地址;对象优先查找自身私有属性;可以被所以实例对象访问;原创 2024-01-10 09:11:03 · 835 阅读 · 1 评论 -
浏览器web/js/javaScript视图滚动
【代码】浏览器web/js/javaScript视图滚动。原创 2024-01-05 19:27:48 · 419 阅读 · 0 评论 -
vue3中如何解决跨域问题(真正意义上的一行代码解决跨域)
在使用 Vue 3 时,解决跨域问题通常涉及对开发服务器的配置和可能的后端更改。原创 2024-01-05 17:33:58 · 1822 阅读 · 2 评论 -
Javascript中如何解决跨域?
每种方法都有其适用场景和限制,通常CORS是最常见和推荐的解决方案。需要注意的是,服务器端的配置是解决跨域问题的关键。在客户端(JavaScript)实施跨域解决方案时,通常需要与服务器端的配置相结合。:这是HTML5中的一个功能,允许不同源之间的脚本进行有限的通信。:这是最推荐的方法。服务器设置适当的HTTP头部允许来自不同源的请求。:由于WebSocket不受同源策略限制,因此也可以用来实现跨域通信。:这种方法用于两个有共同顶级域名的页面之间的通信(例如,允许所有域的访问,或者指定某些域可以访问。原创 2024-01-05 17:29:32 · 597 阅读 · 0 评论 -
vue中什么是过滤器啊?
在组件的选项中定义本地的过滤器filters: {if (!if (!})new Vue({// ...})注意:当全局过滤器和局部过滤器重名时,会采用局部过滤器过滤器函数总接收表达式的值 (之前的操作链的结果) 作为第一个参数。在上述例子中,capitalize过滤器函数将会收到message的值作为第一个参数在这个例子中,filterA被定义为接收单个参数的过滤器函数,表达式message的值将作为参数传入到函数中。然后继续调用同样被定义为接收单个参数的过滤器函数filterB,将。原创 2024-01-04 09:11:43 · 443 阅读 · 0 评论 -
你vue有写过自定义指令吗?知道自定义指令的应用场景有哪些吗?
开始之前我们先学习一下指令系统这个词指令系统是计算机硬件的语言系统,也叫机器语言,它是系统程序员看到的计算机的主要属性。因此指令系统表征了计算机的基本功能决定了机器所要求的能力在vue中提供了一套为数据驱动视图更为方便的操作,这些操作被称为指令系统我们看到的v-开头的行内属性,都是指令,不同的指令可以完成或实现不同的功能除了核心功能默认内置的指令 (v-model和v-show),Vue也允许注册自定义指令//会实例化一个指令,但这个指令没有参数`v-xxx`// -- 将值传到指令中。原创 2024-01-04 09:09:06 · 894 阅读 · 0 评论 -
分享一个JavaScript中非常好用的深拷贝
JavaScript中非常好用的深拷贝。原创 2024-01-02 15:26:13 · 463 阅读 · 1 评论 -
今天来讲解一下JavaScript中的代理与反射(又是一个小知识速速收藏)
JavaScript 中的代理(Proxy)和反射(Reflect)是两个强大的功能,它们允许您在操作对象时拦截、修改或扩展其行为。这两个功能通常一起使用,以实现高度的控制和元编程能力。下面分别介绍代理和反射的概念和用法:ChatGPTJavaScript 中的代理(Proxy)和反射(Reflect)是两个强大的功能,它们允许您在操作对象时拦截、修改或扩展其行为。这两个功能通常一起使用,以实现高度的控制和元编程能力。原创 2024-01-01 08:43:47 · 1072 阅读 · 2 评论 -
Vue常用的修饰符有哪些?有什么应用场景?
事件的细节,让我们不再需要花大量的时间去处理这些烦恼的事情,而能有更多的精力专注于程序的逻辑处理。在程序世界里,修饰符是用于限定类型以及类型成员的声明的一种符号。事件会让我们的网页变卡,因此我们使用这个修饰符的时候,相当于给。使用.native修饰符来操作普通HTML标签是会令事件失效的。在移动端,当我们在监听元素滚动事件的时候,会一直触发。在我们填完信息,光标离开标签的时候,才会将值赋予给。自动过滤用户输入的首空格字符,而中间的空格不会过滤。内置标签那样监听根元素的原生事件,否则组件上使用。原创 2023-12-31 14:03:00 · 967 阅读 · 0 评论 -
vue中怎么缓存当前组件?缓存后怎么更新?今天来说说keep-alive的理解
值,用其与新的缓存规则进行匹配,如果匹配不上,则表示在新的缓存规则下该组件已经不需要被缓存,则调用。发生了变化,即表示定义需要缓存的组件的规则或者不需要缓存的组件的规则发生了变化,那么就执行。设置了 keep-alive 缓存的组件,会多出两个生命周期钩子(中的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染。包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。中缓存组件的数量是否超过了设置的最大缓存数量值。表明该组件还没有被缓存过,则以该组件的。,如果超过了,则把第一个缓存组件删掉。原创 2023-12-31 13:59:15 · 1948 阅读 · 1 评论 -
JS变量、作用域与内存
当JavaScript引擎执行代码时,它会从当前执行上下文的变量环境开始,逐级向上查找变量,直到找到所需的变量为止。在JavaScript中,变量和作用域与内存管理密切相关,因此本文将深入探讨这些主题,以帮助我们更好地理解JavaScript中的变量、作用域和内存。这意味着在使用var声明的变量在整个函数内部都是可见的,而使用let和const声明的变量只在当前块内部可见。它们的主要区别在于作用域和可变性。此外,使用var声明的变量可以被重新赋值,而使用const声明的变量是常量,不能被重新赋值。原创 2023-12-26 20:41:31 · 169 阅读 · 0 评论 -
关于js的垃圾回收机制
尽管现代的JavaScript引擎已经非常智能和高效地处理垃圾回收,但作为开发者,我们仍然需要注意一些编码实践,以避免因为错误的内存管理导致性能下降或内存泄漏的问题。总结:JavaScript的垃圾回收机制是一项关键的功能,它帮助我们简化了内存管理的复杂性,提供了更好的性能和用户体验。在JavaScript中,垃圾回收的目标是识别不再使用的变量,然后释放它们所占用的内存,以便其他变量可以继续使用这些空间。在清除阶段,垃圾回收器会遍历整个内存空间,将未被标记的对象视为垃圾,并回收它们占用的内存空间。原创 2023-12-26 20:40:11 · 209 阅读 · 0 评论 -
在JS中,手动添加标签
【代码】在JS中,手动添加标签。原创 2023-11-28 07:56:35 · 437 阅读 · 0 评论 -
s获取UEditor文本编辑器中的图片地址
写之前在网上找了很多方法,最简单的思路应该是1.获取UEditor中的内容;2.将获取到的字符串转换成jquery对象;3.选择器找到img元素,获取src值。原创 2023-03-31 10:57:34 · 81 阅读 · 1 评论 -
早晨太阳升起HTML5特效特效代码 晚上月亮升起HTML5特效特效代码
最后就是 JS代码了哦。早晨太阳升起HTML5特效特效代码 晚上月亮升起HTML5特效特效代码原创 2022-12-15 11:57:20 · 453 阅读 · 0 评论