js中map()的使用详解

news2025/1/23 20:09:11

引入:

  有网友有如下困惑:

        map是数组的方法,有一个参数,参数是一个函数,函数中有3个参数

        参数1:item必须。当前元素的值

        参数2:index,可选。当前元素在数组中的索引值

        参数3:arr可选。当前元素属于的数组对象

        那这个作为map参数的函数是怎么被调用的呢

一、map()定义

在JavaScript的Array中,它返回一个新的数组,数组中的元素为原始数组调用函数处理后的值。
请注意:
        map()不会对空数组进行检测
        map()不会改变原数组
二、语法:

array.map(function(currentValue, index, arr), thisIndex)

参数详情:

function(currentValue, index, arr):必须。为一个函数,数组中的每个元素都会执行这个函数。其中函数参数:
    currentValue:必须。当前元素的的值。
    index:可选。当前元素的索引。
    arr:可选。当前元素属于的数组对象。
 
thisIndex:可选。对象作为该执行回调时使用,传递给函数,用作"this"的值。

三、本案例中,按照感知理解:

返回一个由原数组每个元素乘以2后返回的新数组。

四、学习map()源码:

var arr = [1, 2, 3, 4, 5]
Array.prototype.myMap = function(fn){
    var len = this.length;
    var arr = [];
    for(var i = 0; i < len; i ++){
        arr.push(fn(this[i],i))
    }
    return arr;
}
var resultArrey = arr.myMap(function(item, index){
    return item * 2;
})
console.log(resultArrey); //[2,4,6,8,10]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1788.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CentOS 7迁移Anolis OS 7 ——筑梦之路

迁移注意事项 Anolis OS 7生态上和依赖管理上保持跟CentOS7.x兼容&#xff0c;一键式迁移脚本centos2anolis.py&#xff0c;实现CentOS7.x到Anolis OS 7的平滑迁移。 使用迁移脚本前需要注意如下事项&#xff1a; 迁移涉及到软件包的重新安装&#xff0c;是不可逆过程&#…

BBR/CUBIC 共存时的 buffer 挤兑

BBR 与 CUBIC 共存时的收敛图&#xff0c;理论情况&#xff1a; 理论上 BBR 不会挤占 buffer&#xff0c;inflight 保持为恒定的 BDP。 但 BBR 的 inflight 做不到恒定&#xff0c;多流共存时&#xff0c;依然会 “主动占用 buffer” 而相互挤兑带宽&#xff0c;而该行为是必须…

java - 序列化

钱应该怎么花 前几天看到一个新闻&#xff0c;一女子打拼了5年攒了30万买房钱&#xff0c;最后因为意外被一场突如其来的大火烧了&#xff0c;经过多家银行&#xff0c;长达4小时的鉴定&#xff0c;挽回了15万损失。 还看到一个新闻&#xff0c;老人攒5000元钱遭虫蛀烂&#…

「Linux」400行纯C语言代码带你「手撕线程池」

线程池的基本概念 不管线程池是什么东西&#xff01;但是我们必须知道线程池被搞出来的目的就是&#xff1a;提高程序执行效率而设计出来的&#xff1b; 了解了线程池的目的后&#xff1a;我们就可以开始理解线程池&#xff1a; 首先回答一个问题&#xff1a;为什么会有线程…

python文件的读取

python文件的读取1.文件的读取1.read() 读取整个文件2.readline() 每次读取一行文件3. readlines() 读取文件的所有行2.文件的写入1.以"x"方式打开文件2.以"a"方式打开文件3.以"w"方式打开文件3.文件的删除4.Excel表数据的读取1.直接读取2.通过p…

SQL Server2019配置always on高可用图文步骤

准备工作 首先需要准备好Windows Server上的故障转移群集&#xff0c;步骤可以参考上一篇。 https://blog.csdn.net/u012869793/article/details/127560270?spm1001.2014.3001.5501 然后服务器上安装好SqlServer&#xff0c;我这里安装的是2019。 正文 勾选启用Always ON可…

牛客竞赛每日俩题 - Day7

目录 经典01背包问题 二叉树遍历与构造&#xff08;考研重点&#xff09; 经典01背包问题 求正数数组的最小不可组成和_百度笔试题_牛客网 参考大佬题解&#xff1a; 动态规划&#xff1a;01背包问题(无物品价值)&#xff0c;思想相同&#xff0c;题目最终要求有些变化 min为…

【机器人定位引导中的机器视觉技术】

文章目录手眼标定原理手眼标定流程定位引导1、单相机抓取定位引导2、单相机纠偏定位引导3、上下相机对位引导随着工业生产中对自动化的要求越来越高&#xff0c;视觉技术已被广泛引入工业机器人行业&#xff0c;具备视觉的工业机器人能更快、更准、更灵活地完成定位抓取、对位组…

Linux系统 (三)- 权限介绍

~~~~前言命令行解释器 -- Command Line Interpreter ShellLinux操作系统命令行解释器对命令行解释器的初步认识命令行解释器的意义shell分类命令行解释器 CLI Shell图形界面 GUI ShellLinux权限Linux中用户分类su基本语法sudo基本语法配置操作权限管理权限是什么文件分类文件属…

【一起学数据结构与算法】计数排序、基数排序、桶排序(含菜鸟教程代码)

目录前言一、计数排序1.1 排序思想1.2 代码1.3 菜鸟教程官方代码(搬运)二、基数排序2.1 排序思想2.2 代码2.3 菜鸟教程官方代码(搬运)三、桶排序3.1 排序思想3.2 代码3.3 菜鸟教程官方代码(搬运)前言 之前我们学过了几种常见的排序&#xff0c;都是基于比较的排序&#xff0c;…

ES6中扩展对象的功能性

对象是JavaScript编程的核心&#xff0c;ECMAScript6为对象提供了许多简单易用且更加灵活的新特性。 ECMAScript 6在对象字面量的基础上做出了以下几个变更&#xff1a; 简化属性定义语法&#xff0c;使将当前作用域中的同名变量赋值给对象的语法更加简洁 function createPe…

【MySQL】MySQL基本操作详解

系列文章目录 第1篇&#xff1a;【MySQL】MySQL介绍及安装 第2篇&#xff1a;【MySQL】MySQL基本操作详解 文章目录 ✍1&#xff0c;数据库操作     &#x1f50d;1.1,查看数据库     &#x1f50d;1.2,创建数据库     &#x1f50d;1.3,选择数据库     &…

Kubernetes基础_02_Pod全解析

系列文章目录 文章目录系列文章目录前言一、Pod的生命周期Lifecycle二、Pod的重启策略RestartPolicy三、静态Pod四、Pod的健康检查总结前言 Pod是Kubernetes最小单位&#xff0c;当然一个Pod可以有多个Container&#xff0c;但是container是docker的元素&#xff0c;不是Kuber…

CTFHub | 布尔盲注

0x00 前言 CTFHub 专注网络安全、信息安全、白帽子技术的在线学习&#xff0c;实训平台。提供优质的赛事及学习服务&#xff0c;拥有完善的题目环境及配套 writeup &#xff0c;降低 CTF 学习入门门槛&#xff0c;快速帮助选手成长&#xff0c;跟随主流比赛潮流。 0x01 题目描述…

无限题库公众号系统搭建

无限题库公众号系统搭建 本平台优点&#xff1a; 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a; 查题校园题库&#xff1a;查题校园题库后台&#xff08;…

《设计模式:可复用面向对象软件的基础》——行为模式(笔记)

文章目录五、行为模式5.1 CHAIN OF RESPONSIBILITY(职责链)1.意图2.动机3.适用性4.结构5.参与者6.协作7.效果8.实现9.代码示例10.相关模式5.2 COMMAND&#xff08;命令&#xff09;1.意图2.别名3.动机4.适用性5.结构6.参与者.7.协作8.效果9.实现10.代码示例11.相关模式5.3 INTE…

CSDN独家 | 全网首发 | Pytorch深度学习·理论篇(2023版)目录

很高兴和大家在这里分享我的最新专栏 Pytorch深度学习理论篇(2023版)&#xff0c;恭喜本博客浏览量达到两百万&#xff0c;CSDN内容合伙人&#xff0c;CSDN人工智能领域实力新星~ 0 Pytorch深度学习理论篇实战篇(2023版)大纲 1 Pytorch深度学习理论篇实战篇(2023版)专栏地址&…

嵌入式应用-详解移植并使用freetype显示文字

目录 前言 1. freetype和相关概念简介 2.freetype显示文字流程和主要函数 2.1 包含头文件及API头文件&#xff1a;ft2build.h 2.2 初始化&#xff1a; FT_InitFreetype 2.3 加载&#xff08;打开&#xff09;字体Face&#xff1a; FT_New_Face 2.4 设置字体大小&#x…

sqrt函数模拟实现的两种方法

起因:在leetcode刷题时&#xff0c;有一道题目考察了有关sqrt的原理的题目&#xff0c;当时就去查了网上的文章&#xff0c;结果发现&#xff0c;一开始的时候看的很懵&#xff0c;最后也是搞定了两种方法&#xff0c;今天我就以最简单的方式写下这两种方式的思路讲解&#xff…