首页 > 编程语言 >JavaScript学习笔记—高阶函数

JavaScript学习笔记—高阶函数

时间:2023-01-23 22:44:37浏览次数:47  
标签:arr 函数 JavaScript 笔记 filter Person new 高阶 name

  • 如果一个函数的参数或返回值是函数,则这个函数就成为高阶函数
  • 将函数作为参数,意味着可以对另一个函数动态的传递代码
class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
}
const personArr = [
  new Person("孙悟空", 18),
  new Person("沙和尚", 38),
  new Person("红孩儿", 8),
  new Person("白骨精", 16),
];
function filter(arr, callback) {
  const newArr = [];
  for(let i = 0; i < arr.length; i++) {
    if(callback(arr[i])) {
      newArr.push(arr[i]);
    }
  }
  return newArr;
}
let result = filter(personArr, a => a.name === "孙悟空"); // 返回Person对象(孙悟空)数组
result = filter(personArr, a => a.age >= 18); // 返回 年龄>=18的对象数组
const arr = [1,2,3,4,5,6,7,8,9,10];
result = filter(arr, a => a % 2 === 0); // 返回 只有偶数的数组

返回值是函数情况:


标签:arr,函数,JavaScript,笔记,filter,Person,new,高阶,name
From: https://www.cnblogs.com/zibocoder/p/17065637.html

相关文章

  • JavaScript 事件冒泡和事件捕获
    事件冒泡指的是从触发元素开始,向父元素传播事件的过程。事件捕获则是相反,从父元素开始,向触发元素传播事件。在JavaScript中,当一个事件发生时,会先进行事件捕获,然后再进行......
  • 《RPC实战与核心原理》学习笔记Day6
    07|架构设计:设计一个灵活的RPC框架RPC就是把拦截到的方法参数,转成可以在网络中传输的二进制,并保证在服务提供方能正确地还原出语义,最终实现像调用本地一样地调用远程的......
  • ABB 800XA学习笔记46:工程组态界面5
    这篇血洗闭集我在新浪博客发表过,地址是ABB800XA学习笔记46:工程组态界面5_来自金沙江的小鱼_新浪博客(sina.com.cn)再则、在这里我也记录一遍,以免丢失继续学习4.4.4库......
  • ABB 800XA学习笔记44:工程组态界面3
    这一片学习笔记我在新浪博客记录过,地址是ABB800XA学习笔记44:工程组态界面3_来自金沙江的小鱼_新浪博客(sina.com.cn)在这里也记录一遍,以免丢失继续学习。4.3 工程工作......
  • ABB 800XA学习笔记45:工程组态界面4
    这一篇博客我在新浪博客记录过,地址是ABB800XA学习笔记45:工程组态界面4_来自金沙江的小鱼_新浪博客(sina.com.cn)在这里也记录一遍,以免丢失接着学习。4.4 用于应用工程......
  • [概率论与数理统计]笔记:4.2 统计量
    4.2统计量统计量的定义样本的任一不含总体分布未知参数的函数为该样本的统计量。常用的统计量样本均值即样本的算术平均值:\[\overline{X}=\frac{1}{n}(X_1,X_2,\cd......
  • JavaScript
    JavaScript第三章--类型、值、变量3.10变量声明与赋值3.10.1let,const//let可以声明的同时赋值,也可以只声明,只声明的变量值为undefinedleti,num;letb=10;//co......
  • ABB 800XA学习笔记42:工程组态界面1
    这一片学习笔记我在新浪博客发表过,地址是ABB800XA学习笔记42:工程组态界面1_来自金沙江的小鱼_新浪博客(sina.com.cn)在这里也记录一遍,以免丢失开始第四章学习。又是英文......
  • ABB 800XA学习笔记43:工程组态界面2
    这一片学习笔记我在新浪博客记录过,地址是ABB800XA学习笔记43:工程组态界面2_来自金沙江的小鱼_新浪博客(sina.com.cn)在这里也记录一遍,以免丢失继续学习。新浪博客访问量......
  • ABB 800XA学习笔记40:S800 IO产品指南那5
    这一篇学习笔记我在新浪博客记录过,地址是ABB800XAxuexibiji40:S800IO产品指南5_来自金沙江的小鱼_新浪博客(sina.com.cn)我在这里也记录一次,以免丢失AC800F/M带有冗余I/......