js数据处理基础函数笔记

本文介绍了JavaScript中的六个重要函数:map用于处理数组,find用于查找子串,reduce用于累加或聚合数据,filter用于筛选元素,forEach用于遍历并修改数组,sort用于排序,以及slice用于切片数组。这些函数在处理数据时具有广泛应用。
摘要由CSDN通过智能技术生成

js函数

1、map函数

map函数是一种高阶函数,用于将一个函数应用于迭代器(列表、数组等)的每个元素,并返回应用函数后的结果组成的新迭代器。

例如:

 const arr = this.allData.map(d => ({userName:d.userName, finalTotalAmount:d.finalTotalAmount}))

这样就将allData的数组只筛选出了userNamefinalTotalAmount 的数据。

2、find函数

find函数通常用于在字符串中查找子串,并返回子串第一次出现的索引位置(从0开始)

string.find(substring, start, end)

例如:

const exis = acc.find(item => item.userName == curr.userName);

3、reduce函数

# 定义一个函数,用于将序列中的元素相加

def sum(x, y):

    return x + y

# 使用reduce函数对列表元素进行累加

sequence = [1, 2, 3, 4, 5]

result = reduce(sum, sequence)

print(result)  # 输出15,即1+2+3+4+5的和

例如:

// //相同数据相加

  // //acc表示累积值,curr表示当前值

     const result = arr.reduce((acc,curr) => {

      const exis = acc.find(item => item.userName == curr.userName);

      if (exis) {

        exis.finalTotalAmount += curr.finalTotalAmount

      } else {

        acc.push(curr)

      }

      return acc;

     },[])

4、filter函数

用于根据指定条件筛选出符合条件的元素,并返回一个新的迭代器。

例如:

  //过滤空数组

  const arr2 = arr1.filter(f =>  {return f.userName !== null})

//筛选年龄大于20,过滤其他并返回新的数组

 

   const filterdata = result.filter(f=>{return f.finalTotalAmount>=0 })

5、forEach函数

用于对数组中的每个元素执行指定操作的方法。它不返回新的数组,而是在原数组上进行修改。

例如:

//   //查出现的次数

//   const count = {};

// arr2.forEach(obj => {

//   if (count[obj.userName]) {

//     count[obj.userName]++;

//   } else {

//     count[obj.userName] = 1;

//   }

// });

6、sort函数

用于对数组元素进行排序。它会原地修改数组,并返回排序后的数组。

A – b 为升序 b – a 为降序

//升序取前二

  filterdata.sort((a,b)=>{return a.finalTotalAmount-b.finalTotalAmount})

7、slice函数

从数组中提取指定部分的方法。它不会修改原始数组,而是返回一个新的数组。

array.slice(startIndex, endIndex)

其中,array是要进行切片的数组,startIndex是要开始切片的索引(包括),endIndex是要结束切片的索引(不包括)

例如:

let result1 = filterdata.slice(0,2);

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值