js知识点
文章平均质量分 52
js集中的知识点,每天进步一点点
漠媂
天涯
展开
-
js---《几种数据类型及区别》
3.基本数据类型的赋值是简单赋值,如果从一个变量向另一个变量赋值基本类型的值,会在变量对象上创建一个新值, 然后把该值复制到为新变量分配的位置上。1.简单数据类型(也称基本数据类型): Undefined;2.引用数据类型(也称复杂数据类型),其中包括Object;1.基本数据类型的值是不可变的,任何方法都无法改变一个基本类型的值。1.引用数据类型的特点和基本数据类型相反。2.基本数据类型不可以添加属性和方法。4.基本数据类型的比较是值的比较。4.引用类型的比较是引用的比较。3.引用类型的赋值是对象引用。原创 2022-11-11 20:35:40 · 189 阅读 · 0 评论 -
js---《实现图片的懒加载》
定义:当打开一个有很多图片的页面时,先只加载页面上看到的图片,等滚动到页面下面时,再加载所需的图片。这就是图片懒加载。作用:减少或延迟请求数,缓解浏览器的压力,增强用户体验如何实现:1.设置图片src属性为同一张图片,同时自定义一个data-src属性来存储图片的真实地址2.页面初始化显示的时候或者浏览器发生滚动的时候判断图片是否在视野中3.当图片在视野中时,通过js自动改变该区域的图片的src属性为真实地址原创 2022-11-09 20:29:57 · 1157 阅读 · 0 评论 -
js---《深拷贝,浅拷贝的实现》{递归复制所有层级的属性,通过JSON方法实现深拷贝,Object.assign(),Array.prototype.concat(),/slice()}
slice(start,end):方法可从已有数组中返回选定的元素,返回一个新数组,包含从start到end(不包含该元素)的数组元素。注意:该方法不会改变原数组,而是返回一个子数组,如果想删除数组中的一段元素,应该使用Array.splice()方法。assign()方法是把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象。深拷贝会另外创造一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。原创 2022-11-09 19:47:47 · 162 阅读 · 0 评论 -
js---《数组去重的方法》{Set+Array.from方法;includes方法;for + object方法;Map方法;reduce方法}
第二个参数,当前元素!reduce里面有一定要return,return出去的值也要注意。Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组,也是ES6的新增方法。includes()方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。Map遍历整个数组,对里面的每个值做处理再返回一个新的值 利用数据结构存值的特点。利用对象属性名不能重复的特性,如果对象中不存在,就可以给push进去。利用Set数据不重复的特点,结合Array.from。原创 2022-11-08 16:17:25 · 432 阅读 · 0 评论 -
js---《数组去重的方法(上)》{filter()和indexOf()实现去重,reduce()和includes()实现去重,双重for循环+splice(),for循环+findlndex..}
该方法是利用了findlndex的特性,查找元素时,未找到返回-1,接下来就需要进行判断,如果是-1,说明没有找到,就往新数组添加元素。reduce() 方法将数组缩减为单个值 includes()方法用来判断一个数组是否包含一个指定的值,如果是返回。indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。该方法是利用sort方法进行排序,进行循环,若原数组的i项和新数组的i-1不一致,就push进去。思路:利用双重for循环找出重复的元素,然后在使用splice()方法删除重复的一个。原创 2022-11-08 10:49:53 · 325 阅读 · 0 评论 -
js--《影响js性能的操作》
4.在IE中根据name属性取得SPAN元素:w3c规范中getElementsByName是按着name属性进行检索的,而MS的IE却是按着id来检索,导致不能得到应该得到的Elements。18.如果参数可以是JS对象,尽量使用对象 : $(“div”).css({ “display”: “block”, “background-color”: “blue” });12.访问属性使用点(.)操作符, 当以变量的方式访问属性的时候,用下标符号([])。10.字符串拼接,可以使用Array#join。原创 2022-11-07 15:28:30 · 159 阅读 · 0 评论 -
《美食街》项目(主页篇){为什么父级的滑动事件,在子级是怎么启用的.节流 性能优化:每隔一段时间,再去执行指定的功能,参数,第一个参数,间隔多少;第二个参数,节流谁
判断当前页数(page)大于总页数(pages)结束运行。如果小于总页数,向后添加到数组menuList里面。> 为什么要再获取一次getMenus? 因为在page属性得到++时,需要获取更多页数,让其活跃起来。> 让新请求的数据,将原本的menuList覆盖;原创 2022-11-05 17:08:22 · 143 阅读 · 0 评论 -
事件流---事件冒泡和事件捕获
所谓冒泡指的就是事件的向上传导,当后代元素上的事件被触发时,其祖先元素的相同事件也会被触发,可以理解为一条鱼在水中吐泡,而这个泡是从水里向水面传送,里到外。事件流呢:在事件发生时,会在发生事件的元素节点与DOM树根节点之间按照特定顺序进行传播,这个过程称为事件流。DOM对象.addEventListener(事件,事件处理程序,事件冒泡方式)。在使用"事件监听"的方式绑定事件时,可以设置事件的响应方式。(1)事件委托:将元素的绑定事件写起其父元素上,防止事件冒泡。首先我们了解一下什么叫做事件流。原创 2022-11-04 20:32:27 · 384 阅读 · 0 评论 -
js--《js缓存的三种方法及区别与特点》
sessionStrong:临时的会话储存,只要当前的会话窗口未关闭,存储的信息就不会丢失,即使页面刷新或在编辑器中更改代码,存储的信息也不会丢失。原创 2022-11-02 22:20:17 · 659 阅读 · 0 评论 -
js--《js延时加载有哪些方式》
《js延时加载有哪些方式》原创 2022-11-02 21:33:48 · 573 阅读 · 0 评论