![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Javascript学习
文章平均质量分 73
本栏主要记录Javascript的相关知识,与大家一起分享。
晓风伴月
以用促学,学以致用。
展开
-
Javascript 可迭代对象与yeild
本文介绍了什么是可迭代对象,创建可迭代对象的方法,并结合yield语法进行应用。原创 2023-12-29 00:15:00 · 1378 阅读 · 0 评论 -
Mouse鼠标事件详解
页面滚动会造成它们俩的数值不一致。我们知道我们给哪个元素绑定了事件,那么这个事件就是事件源,那么,当我们用事件委托来实现一些功能的时候,我们必须要知道我们的事件源。offsetX、offsetY :事件属性返回触发事件时 鼠标相对于事件源元素 的X,Y坐标,标准事件没有对应的属性。mouseover事件发生时,事件的目标元素是获得光标的元素,但是有获得就有失去,此时的相关元素就是失去光标的元素。这是firefox独有的事件,当鼠标向前滚动时,event.detail的值为-3的倍数,否则为3的倍数。原创 2023-12-06 00:48:17 · 2503 阅读 · 0 评论 -
有关addEventListener语法的一点解释
为了提升此种场景下的滚动体验,需要有一个参数来告诉浏览器,事件监听器中不会有 event.preventDefault() ,这样浏览器可以不用等监听器执行完毕,可以自由滚动,因此有了 passive 属性。而监听器的执行是要耗时的,如果在 event.preventDefault() 之前耗时了 2秒 ,这样就会导致页面卡顿。设置一个 passive 的 get 访问器,添加一个 test 的事件,当浏览器支持的时候会调用 get 访问器,在 get 访问器中设置 supportsPassive。原创 2023-12-06 00:00:31 · 926 阅读 · 0 评论 -
JS原型对象的理解与思考
本文主要整理与讲解JS原型对象涉及的__proto__属性相关的知识点及拓展思考。原创 2023-12-05 23:00:22 · 1037 阅读 · 0 评论 -
基于 Proxy 实现双向绑定
Proxy是ES6中新增的一个特性,翻译过来意思是"代理",用在这里表示由它来“代理”某些操作。Proxy让我们能够以简洁易懂的方式控制外部对对象的访问。其功能非常类似于设计模式中的代理模式。Proxy可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写。使用Proxy的核心优点是可以交由它来处理一些非核心逻辑(如:读取或设置对象的某些属性前记录日志;设置对象的某些属性值前,需要验证;某些属性的访问控制等)。原创 2023-12-05 18:30:03 · 426 阅读 · 0 评论 -
探究Symbol变量的两种使用情景下的不同结果
按照Array.prototype.toString的逻辑,应该是会对数组的每个元素进行字符串化,那么上述二者应该是一样的结果。首先,从上图看,在数组中的元素在调用toString时,会调用到join方法。首先,思考Symbol(‘test’).toString是哪来的?它是Object.prototype.toString吗?它的结果其实就是Symbol变量在创建时的描述字符串按照特定的格式进行返回。在ToString的说明里就明确规定:如果参数类型是Symbol,则直接抛出一个TypeError异常。原创 2023-12-05 18:08:40 · 623 阅读 · 0 评论 -
有关正则表达式进行字符串分割的一个问题
在JavaScript中,当使用带有捕获分组的正则表达式进行字符串分割时,分隔符会被保留在结果数组中,并作为数组的一部分返回。当使用带有捕获分组的正则表达式进行字符串分割时,分隔符会被保留在结果数组中,并作为数组的一部分返回。所以第一种方式如果想得到第二种方式同样的结果应该使用非捕获分组。如果不希望分隔符被保留在结果数组中,可以使用非捕获分组。这样就可以实现分隔字符串并且不保留分隔符在结果数组中。表示匹配前面的表达式一次或多次。表示匹配一个或多个连续的换行符。会被保留在结果数组中的原因。原创 2023-12-01 11:46:16 · 554 阅读 · 0 评论