随笔分类 - ES6
摘要:在项目中会遇到循环请求接口的情况,不管使用 for、forEach、map 进行循环都会出现并行请求接口出现高并发,使用reduce实现异步串行重复请求同接口,等待上一次请求结束后在进入下一次请求。 需要循环的对象数组: let loopList = [ { code:1, name:"名称1",
阅读全文
摘要:一、查找对象数组某个属性的最大值和最小值 查找List数组中对象的age属性的最大值 let List=[ { "id": 1, "name": "张三", "value": 20 }, { "id": 2, "name": "李四", "value": 23 }, { "id": 3, "name
阅读全文
摘要:Set 对象 Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。 Set 中的特殊值 Set 对象存储的值总是唯一的,所以需要判断两个值是否恒等。有几个特殊值需要特殊对待: +0 与 -0 在存储判断唯一性的时候是恒等的,所以不重复; undefined 与 undefined 是
阅读全文
摘要:一、默认参数 使用函数默认参数时,不允许有同名参数。 函数参数尾逗号:允许函数最后一个参数有尾逗号。 定义了默认值的参数,应该是函数的尾参数,只有在未传递参数,或者参数为 undefined 时,才会使用默认参数,null 值被认为是有效的值传递。 参数默认值不是传值的,而是每次都重新计算默认值表达
阅读全文
摘要:一、数组扩展创建 1. Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES6新增的数据结构Set和Map),可以接受第二个参数,用来对每个元素进行处理,将处理后的值放入返回的数组。 2. Array.
阅读全文
摘要:一、let、var和const的区别 let:用法类似于var,但所声明的变量,只在let所在的代码块内有效,不存在变量提升,存在块级作用域,存在暂时性死区,变量一定要在声明后使用。 var:用于声明变量,用var声明的变量既是全局变量,也是顶层变量,在代码块之外调用亦生效,存在变量提升,不存在块级
阅读全文
摘要:使用ES6的Object.keys()方法判断对象是否为空,返回值是对象中属性名组成的数组 let obj = {} let arr = Object.keys(obj); console.log(arr.length == 0);//true 即为空对象
阅读全文
摘要:普通数组使用 new Set 去重 let List = [1,2,3,1,2,3]; let newList = new Set(List); console.log(newList); 对象数组使用 reduce 去重 let List= [ { key: 1, value: 'value1'
阅读全文