首页 > 其他分享 >2.手写map

2.手写map

时间:2023-10-30 12:44:26浏览次数:30  
标签:map 20 10 30 let 手写 array

我们首先先创建一个index.js的文件在文件中定义一个数组,就像这样

let array = [10, 20, 30];

array.map((item) => console.log(item));

使用node index.js运行这段代码,我们可以看到输出的结果是
10
20
30
现在让我们来实现自己的map方法吧

let array = [10, 20, 30];

// 与foreach方法不同的是
// map方法会返回一个新的数组
Array.prototype.myMap = function (fn) {
  let newArr = [];

  for (let i = 0; i < this.length; i++) {
    const result = fn(this[i]);
    newArr.push(result);
  }

  return newArr;
};

array.myMap((item) => console.log(`<p>${item}</p>`));
console.log(array);

让我们使用node index.js运行得到了跟刚刚运行一样的结果
10
20
30
[ 10, 20, 30 ]

标签:map,20,10,30,let,手写,array
From: https://www.cnblogs.com/Jannik/p/17797544.html

相关文章

  • 1.手写foreach
    我们首先先创建一个index.js的文件在文件中定义一个数组,就像这样letarray=[10,20,30];array.forEach((item)=>console.log(item));使用nodeindex.js运行这段代码,我们可以看到输出的结果是102030现在让我们来实现自己的foreach方法吧letarray=[10,20,30];......
  • 关于mapStruct-高阶用法
    描诉:符合应用场景的实用的mapStruct对于bean映射的方法1.使用自定义转换器(Converters):如果你需要自定义映射逻辑,可以创建自定义转换器类,并使用@Mapper注解的uses属性来引用它们。这允许你在映射中使用自定义方法,以满足特定需求.@Mapper(uses={CustomConverter.class})public......
  • 按Value对Map进行排序,技术大佬们都在用这个方法
    在Java中,Map的排序一般会根据Key或者Value来进行。按照Value对Map进行排序,通常会用在以下几种场景。1.数据可视化:如果你正在创建一个数据可视化工具,你可能会需要根据数据的值来进行排序。例如,你可能有一个表示员工工资的Map,你想要根据工资值来对员工进行排序,并在图表中展示。2.......
  • Optional.ofNullable()方法, 参数list或者map如果为null执行 ofNullable(创建个新对象
    Optional.ofNullable()方法举个栗子publicstaticvoidmain(String[]args){List<String>list=null;list.forEach(x->System.out.println(x));}工作中经常会遇到,查询返回空,如果没有判空处理,一不小心就会空指针异常。加上if判断处理也可以,但是jdk1.......
  • 信号量Semaphore的使用
    Semaphore是jdk中提供的用来限制资源可以同时被几个线程访问的工具类,它底层也是用aqs实现的。以现实生活中停车场的例子来举例,一个停车场总的车位数是固定的,@Slf4jpublicclassThreadTest4{publicstaticvoidmain(String[]args){//假设只能停两辆车......
  • std::map和std::unordered_map
    区别std::map和std::unordered_map是C++标准库中的两个容器,用于实现键值对的关联。它们之间的主要区别在于底层实现和性能特征。底层实现:std::map是基于红黑树(一种平衡二叉搜索树)实现的有序映射容器,而std::unordered_map是基于哈希表实现的无序映射容器。排序:std::map中的......
  • HashMap集合遍历随机性问题分析
    一、原因分析1.1HashMap对象的遍历HashMap的遍历是通过此类中字段table数组进行顺序遍历,原因如下所示:1#HashMap迭代遍历源码2publicfinalbooleanhasNext(){3returnnext!=null;4}56finalNode<K,V>nextNode(){7Node<K,V>[]t;......
  • 无涯教程-Clojure - struct-map函数
    通过显式定义将哪些值分配给结构中的哪些键,此函数用于将值专门分配给键值。struct-map-语法(struct-mapstructnamekeynvaluen….)参数   - "structname"是要赋予结构的名称,"keyn和valuen"是需要分配给该结构的键值。返回值 - 返回一个结构对象,其值映射......
  • 用HashMap创建jString,ArrayList的键值对用entrySet遍历
    用HashMap创建jString,ArrayList的键值对用entrySet遍历package随机点名器;importjava.util.*;publicclassTest1{publicstaticvoidmain(String[]args){HashMap<String,ArrayList<String>>m=newHashMap<>();ArrayList<String>......
  • ArcMap属性表出现乱码情况的解决
      本文介绍ArcMap软件打开图层的属性表后,出现字段中汉字乱码情况的解决方法。  有时在使用ArcMap软件时,会发现一些图层的属性表中,原本应该是中文的字段却出现乱码的情况;如下图所示,其中NAME99一栏应该是图层中各个要素对应的汉语名称,但却出现了数字、符号等乱码。  针对这......