- 博客(13)
- 收藏
- 关注
原创 javascript进阶ES6+新特性解释
arguments 函数中的动态参数,当函数没有声明形参时,用户可以通过传入任意数量的实参 实现动态传参,传入的实参都被函数里的arguments所接收,arguments是一个存放参数的伪数组--即无法使用数组对象的方法。对象解构即通过{}内的对象的属性名可以解构出对象属性,需要注意的时解构出来的对象属性不能与现有变量重名,如需重新命名解决方案是在解构的时候通过“属性名:新变量名”的方式更改属性名为新的变量名。2. 从根部(js中全局对象)触发定时扫描内存中的对象,凡能到达根部的对象,都是还需要使用的;
2025-10-18 22:57:38
920
原创 javaScript事件流概念
从DOM根元素出发去执行对应的事件,当触发捕获机制时,代码会从DOM元素依次往下触发绑定同类型事件的元素。例如,我们有三个事件绑定,都是click触发,且三个事件的绑定元素有父子关系,那么当我们点击子元素时,将从祖先到父再到子,依次触发。L2语法:元素 . removeEventListenter('事件名',具名函数[,options]) (方括号里的参数可选)简单来说捕获就是父元素到子元素,冒泡就是子元素到父级。:当一个元素触发事件后,会依次向上调用所有父级元素的同名事件,
2025-10-18 22:56:59
205
原创 javaScript定时器
要点提示:函数名不要加括号,()在程序中的语义表示调用函数,()会导致setInterval失效。timer为延时函数,需要将延时函数赋值给变量timer。解释:每隔一段时间执行这个函数,间隔时间是毫秒。使用clearrInterval关闭定时器。setInterval(函数,间隔时间)
2025-10-16 11:32:12
304
原创 javaScript代码执行机制(同步异步事件循环)
异步任务的三种类型:普通事件(点击,聚焦,滑动), 资源加载(load、error),定时器(setInterval、setTimeout)等。同步就是所有流程按顺序依次执行,异步就是在某个流程执行过程中允许其他流程执行。:任务执行完毕再获取任务再执行的过程。执行代码和收集异步代码,在调用栈空闲时,反复调用任务队列里的回调函数执行机制。,此时异步任务在任务队列中,一旦执行栈众多同步任务执行完毕,系统依次。,同步任务由js主线程直接解析,当解析完就会获取异步任务。,被读取到的异步任务进入执行栈开始执行。
2025-10-15 08:02:01
163
原创 javaScript中的闭包
如下案例,函数a和数据count形成了一个闭包,这就意味这当函数add执行完毕后变量count不会被回收,而是与函数a绑定,通过语句:res() 执行调用函数a访问变量count时将直接调取count。注意:这里一定要使用res去接收add(),这一步操作实际上是将add()函数里的函数a()赋值给了res,此时res便形成了一个从外部访问到a()内部的变量count的通道。当通过调用外部函数返回的内部函数时,即使外部函数已经运行结束了,但是被内部函数引用的外部函数的变量仍然存在内存中没有被回收。
2025-10-15 08:00:44
224
原创 js中的正则表达式与元字符
正则表达式是 用于匹配字符串中字符组合的模式。在js中,正则表达式也是对象;通常用来查找、替换那些符合正则表达式的文本,许多语言都支持正则表达式。如果看不懂正则表达式的定义没关系,我们主要要搞清楚正则表达式的作用,在js中正则表达式的使用场景包括:验证表单,用户名表单只能输入英文字母、数字或者下划线,昵称输入框中可以输入中文(匹配过滤掉页面内容中的一些敏感词(替换或者从字符串中获取我们想要的特定部分(提取。
2025-10-14 07:42:05
1759
原创 深入javaScript的对象-构造函数
JavaScript构造函数是创建对象的重要工具,主要用于初始化对象。通过new关键字调用构造函数可批量创建相似对象,比字面量方式更高效。构造函数需遵循命名约定(首字母大写),其内部this指向新对象。实例成员属于实例对象,静态成员则属于构造函数本身。内置构造函数如Object、Array、String等提供常用方法:Object.keys()获取属性名、reduce()数组求和、split()字符串分割等。基本数据类型通过包装类型(如String、Number)也能调用方法。构造函数机制使JavaScri
2025-10-14 07:39:04
877
原创 javaScript事件监听(注册事件)
语法:元素对象.addEventListenter('事件类型', 要执行的函数)为button注册点击事件‘click’,给出抽象函数执行动作。函数中里变量的定义可以使用const,根据垃圾回收机制,在执行完事件后,局部变量会被回收。语法:元素.onclick = funcation(){ ······ }DOM L1 (老版本)的事件绑定操作,会被同名事件覆盖,而addEventListenter可以多次绑定,且具有冒泡和捕获的特性。鼠标事件:点击事件鼠标经过鼠标离开焦点事件:获得光标。
2025-10-13 12:00:00
1956
原创 javaScript中的Window对象
window对象是一个全局对象,也可以说是JavaScript中的顶级对象;document()、alert()、console.log()这些都是window的属性,基本BOM的属性和方法都是window的;window对象下的属性和方法调用的时候可以省略window。主要管理网页的历史记录,该对象与浏览器地址栏的操作相对应,如前进、后退、历史记录等。获取地址中的哈希值,"#" 后面的部分。location的数据类型为对象,它拆分并保存了URL地址的各个部分。" 后所携带的参数,以字符串的形式。
2025-10-13 11:45:00
300
原创 javaScript事件委托机制
其中this指代ul,所有li变成红色,如果希望只有被点击的 li 触发事件,可以利用 e.target 找到目标元素 li;如果希望指定父级内部的标签类型添加事件,可以在事件中加上 if 判断语句,判断点击元素的标签类型,语法为。我们通常通过for循环的方式给同级兄弟元素注册同一个事件,现在我们可以通过事件委托将事件委托给父元素,利用冒泡机制触发事件。给父元素注册事件,当我们触发子元素时候,会冒泡到父元素身上,从而触发父元素的事件。,其中类型为字符串类型且大写。原理:利用事件冒泡的特点。
2025-10-13 07:21:12
185
原创 javascript进阶学习总结(下)深浅拷贝 异常处理 this指向 防抖 节流
本文介绍了JavaScript中对象复制、深浅拷贝及异常处理相关知识。对象复制时由于引用类型特性,直接复制会导致多个变量指向同一对象。浅拷贝(如扩展运算符、Object.assign)仅复制一层属性,深拷贝(递归、lodash.cloneDeep、JSON方法)能完全复制对象。异常处理部分讲解了throw抛出错误、try-catch捕获异常及debugger调试技巧。此外还分析了this在不同场景下的指向问题,以及call、apply、bind改变this指向的方法。最后介绍了防抖(debounce)和节流
2025-10-13 07:14:39
1175
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅