JS知识点巩固

news2024/11/28 19:48:31

目录

前言

一、reduce方法

二、二维数组的行和列交换

总结


前言

这里的知识点记录的是日常生活中容易搞忘的知识点

一、reduce方法

function(total,currentValue, index,arr)

redece可以用作累加:可以传入初始值,如果传入初始值,则从累加值索引为0开始计算,如果不传入初始值则累加值就为索引0的值,则当前值为索引为1的值

如以下例子:

1.不传入初始值,计算结果a为10,index从1开始,pre累加值刚开始为数组索引为0的值1

            const arr = [1, 2, 3, 4];
            const a = arr.reduce((pre, cur, index: any) => {
                console.log(pre, cur, '索引为:' + index);
                return pre + cur;
            });
            console.log(a);

2.如果传入初始值,则pre刚开始为传入的初始值,数组索引从0开始循环

            const arr = [1, 2, 3, 4];
            const a = arr.reduce((pre, cur, index: any) => {
                console.log(pre, cur, '索引为:' + index);
                return pre + cur;
            }, 2);
            console.log(a);

二、二维数组的行和列交换

二维数组适用于数据大屏返回同一类型的东西不同时间的状态时,需要交换下行和列

如下列数组,本身为4*3(4行*3列),现在想要将数字一致的放在一个数组,也就是交换arr1的行和列,可以使用以下方法

这个方法主要是使用两个map第一个map将数组的列作为循环,第二个数组是将arr1根据列数组生成的索引取到原数组相同列的值,然后再返回,经历三次循环,最后返回一个数组中有三个数组

            const arr1 = [
                [{ num: 1 }, { num: 2 }, { num: 3 }],
                [{ num: 1 }, { num: 2 }, { num: 3 }],
                [{ num: 1 }, { num: 2 }, { num: 3 }],
                [{ num: 1 }, { num: 2 }, { num: 3 }],
            ];
            const a = arr1[0].map((item, index) => arr1.map(row => row[index]));


总结

reduce的用法和二维数组的行列交换对我来说理解稍微复杂了些,需要加深记忆,记录一下

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

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

相关文章

【FAS】《The Research of RGB Image Based Face Anti-Spoofing》

文章目录 1、原文2、相关工作3、基于特征解耦的人脸活体检测算法3.1、方法3.2、实验结果 4、基于解构与组合的人脸活体检测方法4.1、方法4.2、实验 5、作者总结6、结论(own)7、附录7.1、CycleGAN7.2、InfoGAN7.3、3D Face 1、原文 [1]张克越.基于RGB图像…

项目成功秘诀:工单管理系统如何加速进程

国内外主流的10款项目工单管理系统对比:PingCode、Worktile、浪潮云工单管理系统、华为企业智能工单系统、金蝶云苍穹、紫光软件管理系统、Jira、Asana、ServiceNow、Smartsheet。 在管理日益复杂的个人项目时,找到一款能够真正符合需求的管理软件&#…

Stable Diffusion 图生图

区别于文生图,所谓的图生图,俗称的垫图,就是比文生图多了一张参考图,由参考一张图来生成图片,影响这个图片的要素不仅只靠提示词了,还有这个垫图的因素,这个区域就上上传垫图的地方,…

二叉树--堆(下卷)

二叉树–堆(下卷) 如果有还没看过上卷的,可以看这篇,链接如下: http://t.csdnimg.cn/HYhax 向上调整算法 堆的插⼊ 将新数据插⼊到数组的尾上,再进⾏向上调整算法,直到满⾜堆。 &#x1f4…

Monaco 使用 LinkedEditingRangeProvider

Monaco LinkEdit 功能是指同时修改同样的字符串,例如在编辑 Html 时,修改开始标签时会同时修改闭合标签。Monaco 支持自定义需要一起更新的字符串列表。最终效果如下: 首先,通过 registerLinkedEditingRangeProvider 注册 LinkEd…

day17(nginx反向代理)

反向代理 安装nginx 1.26.1 平滑升级 负载均衡 1.nginx 反向代理配置 反向代理:⽤户直接访问反向代理服务器就可以获得⽬标服务器 (后端服务器)的资源。 反向代理效果:当访问200主机(web1),&a…

vite instanceof 失效

背景:给一个巨石单体项目进行标准化模块拆分,封装出来的模块代码用 vite 进行构建,但模块启动后页面上的表现一直和 webpack 那版不一致 一步步 debug 后,发现问题出在下面这个判断条件 const GeneratorFunction function* () …

解决jenkins配置extendreport不展示样式

下载插件:Groovy 、 HTML Publisher plugin 配置: 1)Post Steps : 增加 Execute system Groovy script , 内容: System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "&qu…

【React】详解 React Router

文章目录 一、React Router 的基本概念1. 什么是 React Router?2. React Router 的主要特性 二、React Router 的核心组件1. BrowserRouter2. Route3. Link4. Switch 三、React Router 的使用方法1. 安装 React Router2. 定义路由组件3. 配置路由4. 启动应用 四、Re…

再谈istio

微服务之间调用观测, istio的版本是对k8s 版本有要求的,案例中 istioshi 1.15.2 版本的 一、下载 Istio 二、部署 egressgateway 和 ingressgateway 分别控制进出 istio 通过 Envoy proxy,也就是pod加边车的方式来控制用户对svc的访问 这样…

Spring验证码

前言:使用Hutool 1.什么是Hutool? 2.代码复制到test类中 3.代码爆红,说明需要引入依赖 4.根据名取Maven仓库相关依赖 5.在pom.xml文件中进行配置 6.引入成功 7. 运行程序 打开d盘,发现已经生成了验证码的图片,路径在…

Python推荐书单:三本不可错过的经典书籍

强烈推荐这三本书!! 一、《Python编程从入门到实践》 这本书适合零基础的Python读者,旨在帮助他们快速入门Python编程,并达到初级开发者的水平。书中深入浅出地介绍了Python的基础概念,如变量、循环、函数等&#xff…

智能优化算法(三):遗传算法

文章目录 1.问题描述2.遗传算法2.1.算法概述2.2.编码操作2.3.选择操作2.4.交叉操作2.5.变异操作2.6.算法流程 3.算法实现3.1.MATLAB代码实现3.2.Python代码实现 4.参考文献 1.问题描述 \quad 在利用启发式算法求解问题时,我们常常需要应用遗传算法解决函数最值问题&…

【Golang 面试 - 进阶题】每日 3 题(八)

✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/UWz06 📚专栏简介:在这个专栏中,我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏…

重塑七人拼团模式:社交电商的裂变新策略

在当今的电商领域,七人拼团模式作为一种创新的商业模式,正以其独特的魅力引领着中小型企业迈向新的增长阶段。这一模式巧妙融合了社交电商的互动性与拼购的趣味性,旨在通过用户间的自然传播,实现市场的快速渗透与品牌影响力的显著…

【赛事推荐】2024中国高校计算机大赛人工智能创意赛

“中国高校计算机大赛”(China Collegiate Computing Contest,简称C4)是面向全国高校各专业在校学生的科技类竞赛活动,于2016年由教育部高等学校计算机类专业教学指导委员会、教育部高等学校大学软件工程专业教学指导委员会、教育…

NSS [SWPUCTF 2022 新生赛]funny_php

NSS [SWPUCTF 2022 新生赛]funny_php 开题&#xff0c;直接给了源码 <?phpsession_start();highlight_file(__FILE__);if(isset($_GET[num])){if(strlen($_GET[num])<3&&$_GET[num]>999999999){echo ":D";$_SESSION[L1] 1;}else{echo ":C&…

Express基于Node.js基础知识【1】全面总结 推荐收藏

最近在用基于node.js平台的web应用开发做项目&#xff0c;梳理了下关于Express框架的相关知识&#xff0c;方便自己以后查看&#xff0c;希望也能帮助证字啊学习express相关知识的同学&#xff0c;欢迎大家参考&#xff0c;有问题评论区留言&#xff0c;谢谢。 目录 1.安装 …

【人工智能】基础三:深度学习概述、人工神经网络基础

文章目录 一. 深度学习1. 深度学习概念2. 深度学习原理3. 深度学习学习方式4. 深度学习训练方法 二. 人工神经网络基础1. 神经元感知器模型2. 神经网络模型2. 学习方式3. 学习规则3.1. 正向传播求误差3.2. 反向传播求偏导&#xff08;ing&#xff09; 4. 激活函数 一. 深度学习…

【环境搭建问题】linux服务器安装conda并创建虚拟环境

1.检查有没有conda 首先看root文件夹下有没有anaconda或者conda 没有的话就要先下载安装conda&#xff1a; https://repo.anaconda.com/archive/index.html 在这个链接下找自己需要的。服务器一般为linux&#xff0c;所以我这里选择的是&#xff1a; 2.安装conda 下载安装…