ES6数组和对象常用方法

        ES6 引入了许多新的数组和对象操作方法,使得 JavaScript 编程更加方便和高效。下面分别介绍一些常用的数组和对象操作方法:

一、数组操作方法 

1、Array.from()

  • 将类数组对象或可迭代对象转换为真正的数组。
const arrayLike = { 0: 'a', 1: 'b', length: 2 };
const newArray = Array.from(arrayLike); // ['a', 'b']

2、Array.prototype.find()

  • 返回数组中满足提供的测试函数的第一个元素的值。
const numbers = [10, 20, 30, 40];
const found = numbers.find(num => num > 25); // 30

3、 Array.prototype.findIndex()

  • 返回数组中满足提供的测试函数的第一个元素的索引。
const numbers = [10, 20, 30, 40];
const foundIndex = numbers.findIndex(num => num > 25); // 2

4、Array.prototype.filter() 

  • 创建一个新数组,其中包含所有通过测试的元素。
const numbers = [10, 20, 30, 40];
const filtered = numbers.filter(num => num > 25); // [30, 40]

5、Array.prototype.map() 

  • 创建一个新数组,其结果是该数组中每个元素调用一个提供的函数后的返回值。
const numbers = [1, 2, 3];
const doubled = numbers.map(num => num * 2); // [2, 4, 6]

6、Array.prototype.reduce() 

  • 对数组中的每个元素执行一个提供的函数,并将其结果汇总为单个值。
const numbers = [1, 2, 3, 4];
const sum = numbers.reduce((acc, current) => acc + current, 0); // 10

7、Array.prototype.includes() 

  • 判断数组是否包含某个特定元素。
const numbers = [1, 2, 3];
const includesTwo = numbers.includes(2); // true

二、对象操作方法 

 1、Object.keys()

  • 返回一个由对象的自身可枚举属性组成的数组。
const obj = { a: 1, b: 2, c: 3 };
const keys = Object.keys(obj); // ['a', 'b', 'c']

2、Object.values()

  • 返回一个包含对象自身的所有可枚举值的数组。
const obj = { a: 1, b: 2, c: 3 };
const values = Object.values(obj); // [1, 2, 3]

3、Object.entries() 

  • 返回一个给定对象自身可枚举属性的键值对数组。
const obj = { a: 1, b: 2, c: 3 };
const entries = Object.entries(obj); // [['a', 1], ['b', 2], ['c', 3]]

4、Object.assign()

  • 用于将所有可枚举属性的值从一个或多个源对象复制到目标对象,并返回目标对象。
const target = { a: 1 };
const source = { b: 2, c: 3 };
const merged = Object.assign(target, source); // { a: 1, b: 2, c: 3 }

         这些方法不仅提升了 JavaScript 编程的效率,还使代码更加清晰和易于维护。在实际开发中,结合这些方法能够更好地处理数组和对象的操作需求。

  • 19
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在ES6中对数组对象进行去重,有几种方法可以实现。 方法一是使用filter()方法和findIndex()方法。首先使用filter()方法返回一个新的数组,其中包含满足条件的唯一元素。然后使用findIndex()方法来检查新数组中是否已存在当前元素。如果不存在,则将其添加到新数组中。这种方法适用于简单的对象数组去重操作。 方法二是使用reduce()方法。reduce()方法可以对数组进行迭代,并返回一个累积值。在这种情况下,我们可以使用reduce()方法来遍历数组并构建一个新数组,其中没有重复的元素。可以通过检查每个元素是否在累积值中出现来实现去重。 另外,还可以使用ES6中新增的Set数据结构来进行去重。Set是一种值的集合,它只能存储唯一的值。可以将数组转换为Set,然后再将Set转换回数组。这样就可以去除重复的元素。 下面是一个示例代码,演示了如何使用reduce()方法实现数组对象去重: ```javascript let person = [ {id: 0, name: "小明"}, {id: 1, name: "小张"}, {id: 2, name: "小李"}, {id: 3, name: "小孙"}, {id: 1, name: "小周"}, {id: 2, name: "小陈"}, ]; let hasObj = {}; person = person.reduce((cur, next) => { hasObj[next.id ? "" : (hasObj[next.id = true && cur.push(next)); return cur; }, []); console.log(person); // 输出: [{"id": 0,"name": "小明"}, {"id": 1,"name": "小张"}, {"id": 2,"name": "小李"}, {"id": 3,"name": "小孙"}] ``` 以上是几种常用方法来实现ES6数组对象去重的方式。可以根据具体的需求选择其中适合的方法进行操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

真真假假々

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值