9.22(一):数组扁平化
ES6的flat方法
const arr=[1,2,[33,44,5,[6,7]],3]// es6中的flat方法function arr1()
{
//数组自带的扁平化方法,flat的参数代表的是需要展开几层,
//如果是Infinity的话,就是不管嵌套几层,全部都展开return arr.flat(Infinity)
}
let result=arr1();
console.log(result)
结果:

JSON+正则
function arr2()
{
// 首先是使用 JSON.stringify 把 arr 转为字符串
// 接着使用正则把字符串里面的 [ 和 ] 去掉
// 然后再拼接数组括号转为数组对象let arr1=JSON.stringify(arr).replace(/\[|\]/g,"");return JSON.parse('['+arr1+']')
}
结果:

递归
function arr3() {let myArr = [];function fn(arr1){for (let i = 0; i < arr1.length; i++) {//判断是否是数组if(Array.isArray(arr1[i])){fn(arr1[i])}else{myArr.push(arr1[i])}}}fn(arr)return myArr
}
结果:

reduce方法
function myredduce(arr)
{// reduce 方法: 可以用来给数组求和
// concat() 方法用于连接两个或多个数组。
// concat() 方法不会更改现有数组,而是返回一个新数组,其中包含已连接数组的值。return arr.reduce((pre,cur)=>{return pre.concat(Array.isArray(cur) ? myredduce(cur) : cur)},[])}
let result = myredduce(arr);
结果:

栈思想
function mystack()
{let newArr=[];let stack=[].concat(arr)while(stack.length!=0){const val=stack.pop();if(Array.isArray(val)){stack.push(...val)}else{newArr.unshift(val)}}return newArr
}
let result = mystack(arr);
结果:

相关文章:
9.22(一):数组扁平化
ES6的flat方法 const arr[1,2,[33,44,5,[6,7]],3]// es6中的flat方法function arr1() { //数组自带的扁平化方法,flat的参数代表的是需要展开几层, //如果是Infinity的话,就是不管嵌套几层,全部都展开return arr.flat(Infinity) } let resul…...
【vue2第十九章】手动修改ESlint错误 和 配置自动化修改ESlint错误
目标:认识代码规范 代码规范:一套写代码的约定规则。例如:“赋值符号的左右是否需要空格”,"一句结束是否是要加;”等 为什么要使用代码规范? 在团队开发时,提高代码的可读性。 在创建项目时,我们选择的就是一套完整的代码…...
计算机网络常见面试题
目录 一、谈一谈对OSI七层模型和TCP/IP四层模型的理解? 答:OSI七层模型主要分为: TCP/IP四层协议: 二、谈谈TCP协议的3次握手过程? 三、TCP协议为什么要3次握手?2次,4次不行吗? …...
springboot整合MeiliSearch轻量级搜索引擎
一、Meilisearch与Easy Search点击进入官网了解,本文主要从小微型公司业务出发,选择meilisearch来作为项目的全文搜索引擎,还可以当成来mongodb来使用。 二、starter封装 1、项目结构展示 2、引入依赖包 <dependencies><dependenc…...
禁用鼠标的侧边按键
新买了个鼠标,整体都不错,就是鼠标左侧有两个按键,大拇指经常无意触碰到,造成误操作。 就想着关闭侧边按键功能。以下这批文章帮了大忙! 鼠标侧键屏蔽,再也不用担心按到侧键了。_禁用鼠标侧键_挣扎的蓝藻…...
【C语言】数组和指针刷题练习
指针和数组我们已经学习的差不多了,今天就为大家分享一些指针和数组的常见练习题,还包含许多经典面试题哦! 一、求数组长度和大小 普通一维数组 int main() {//一维数组int a[] { 1,2,3,4 };printf("%d\n", sizeof(a));//整个数组…...
2023年中国研究生数学建模竞赛D题解题思路
为了更好的帮助大家第一天选题,这里首先为大家带来D题解题思路,分析对应赛题之后做题阶段可能会遇到的各种难点。 稍后会带来D题的详细解析思路,以及相关的其他版本解题思路 成品论文等资料。 赛题难度评估:A、B>C>E、F&g…...
在编译源码的环境下,搭建起Discuz!社区论坛和WordPress博客的LNMP架构
目录 一.编译安装nginx 二.编译安装MySQL 三.编译安装PHP 四.安装论坛 五.安装wordpress博客 六.yum安装LNMP架构(简要过程参考) 一.编译安装nginx 1)关闭防火墙,将安装nginx所需软件包传到/opt目录下 systemctl stop fire…...
腾讯面试题:无网络环境,如何部署Docker镜像?
亲爱的小伙伴们,大家好!我是小米,很高兴再次和大家见面。今天,我要和大家聊聊一个特别有趣的话题——腾讯面试题:无网络环境,如何部署Docker镜像?这可是一个技术含量颇高的问题哦!废…...
医学影像信息(PACS)系统软件源码
PACS系统是PictureArchivingandCommunicationSystems的缩写,与临床信息系统(ClinicalInformationSystem,CIS)、放射学信息系统(RadiologyInformationSystem,RIS)、医院信息系统(HospitalInformationSystem,HIS)、实验室信息系统(L…...
【01】FISCOBCOS的系统环境安装
我们选择ubuntu系统 01 https://www.ubuntu.org.cn/global 02 03下载最新版 04等待下载 00提前准备好VM,点击创建新的虚拟机 01选择自定义安装 02一直下一步到 03 04 05其他的默认即可 06 07 08 09 10 11一直默认到下面 12 13等待安装 安装后重启即可…...
flutter 权限和图片权限之前的冲突
权限插件 permission_handler: ^9.2.0想调起相册和视频,这个插件只有Permission.storage.request().,获取存储权限。 问题是android 13的一些手机,系统设置没有存储权限,用了上面这个权限,三次拒绝后就永久拒绝了&…...
OpenCV(四十八):读取视频和保存视频
OpenCV(Open Source Computer Vision Library)是一个功能强大的开源计算机视觉库,它提供了丰富的功能,包括读取和保存视频。下面分别演示如何使用OpenCV来读取视频和保存视频。 1. 读取视频: 在OpenCV中我们要获取一…...
如何在react/next.js app中的同级组件间传递数据
这篇文章也可以在我的博客中查看 问题 为什么会有这么奇怪的需求?在事情真正发生前真的难说,但真遇到一个需要这么做的情况。 最近想做一个网页时钟,它的结构如下: 时钟(计算时间,组织各个要素ÿ…...
软件需求文档、设计文档、开发文档、运维文档大全
在软件开发过程中,文档扮演着至关重要的角色。它不仅记录了项目的需求、设计和开发过程,还为项目的维护和管理提供了便利。本文将详细介绍软件开发文档的重要性和作用,以及需求分析、软件设计、开发过程、运维管理和项目管理等方面的文档要求…...
排序算法-----归并排序
目录 前言: 归并排序 1. 定义 2.算法过程讲解 2.1大致思路 2.2图解示例 拆分合成步骤 编辑 相关动态图 3.代码实现(C语言) 4.算法分析 4.1时间复杂度 4.2空间复杂度 4.3稳定性 前言: 今天我们就开始学习新的排序算法…...
docker 配置 gpu版pytorch环境--部署缺陷检测--Anomalib
目录 一、docker 配置 gpu版pyhorch环境1、显卡驱动、cuda版本、pytorch cuda版本三者对应2、拉取镜像 二、部署Anomalib1、下载Anomalib2、创建容器并且运行3、安装Anomalib进入项目路径安装依赖测试: 一、docker 配置 gpu版pyhorch环境 1、显卡驱动、cuda版本、p…...
为什么定时发朋友圈会更有效呢?
这是因为在同一时段 发送的好友朋友圈 无法有效分散用户的注意力 导致曝光度难以提升 而通过推广定时发朋友圈 可根据自己的粉丝活跃度 设置发圈时间 让每一条朋友圈都能高效 传递到更多的好友手中 这样,曝光度自然而然地就大大提升了! 1.多个号…...
【跟小嘉学 PHP 程序设计】一、PHP 开发环境搭建
系列文章目录 【跟小嘉学 PHP 程序设计】一、PHP 开发环境搭建 文章目录 系列文章目录@[TOC](文章目录)前言一、PHP介绍二、Centos 安装 PHP2.1、安装并启动 Nginx2.2、安装并启动 mariadb2.3、安装 rh-php2.4、添加 Nginx 配置2.5、Nginx 服务三、使用 Docker 为 PHP 部署开发…...
【zookeeper】zk选举、使用与三种节点简介,以及基于redis分布式锁的缺点的讨论
这里我准备了4台虚拟机,从node1到node4,其myid也从1到4. 一,zk server的启动和选举 zk需要至少启动3台Server,按照配置的myid,选举出参与选举的myid最大的server为Leader。(与redis的master、slave不同&a…...
1.1 AI技术全景图:从传统ML到大模型
AI技术全景图:从传统ML到大模型本文适合谁:完全没有AI背景的读者。读完这篇,你会知道"AI/机器学习/深度学习/大模型"这几个词是什么关系,以及你将要学的东西在整个AI世界里处于什么位置。AI发展经历了三个时代——本文带…...
Teensy41嵌入式FTP服务器库:轻量协议栈与多网络适配
1. 项目概述FTP_Server_Teensy41 是一款专为 Teensy 4.x 系列微控制器(特别是 Teensy 4.0 和 Teensy 4.1)深度定制的嵌入式 FTP 服务器库。它并非从零构建,而是基于 Jean-Michel Gallego 开发的成熟开源项目 Arduino-Ftp-Server 进行了系统性…...
STM32家庭健康检测仪设计与实现
基于STM32的家庭健康检测仪设计与实现1. 项目概述1.1 系统架构本家庭健康检测仪采用模块化设计架构,以STM32F103RCT6为主控芯片,集成多种生物传感器实现体温、心率和血氧检测功能。系统硬件架构如下图所示:[主控芯片] ←→ [传感器模块] ←→…...
Python制作简易PDF查看工具——PDFViewerV1.0
PDFViewer PDF浏览工具,是使用Python语言(使用PyQt5开发界面,PDF解析使用PyMuPDF开源模块)开发的PDF查看工具,已经实现基本翻页浏览、OCR文字识别(基于开源主流文字识别模型实现)、内容查找高亮…...
taocms v3.0.2漏洞防御指南:如何避免.htaccess文件被恶意利用
Taocms v3.0.2安全加固实战:从漏洞原理到防御体系构建 当网站管理后台的.htaccess文件成为攻击者的跳板时,系统安全便形同虚设。近期曝光的Taocms v3.0.2远程代码执行漏洞(CVE-2022-25578)正是利用了这一薄弱环节,攻击…...
Qwen3-0.6B-FP8入门必看:6亿参数如何做到≤2GB显存?FP8量化压缩深度解析
Qwen3-0.6B-FP8入门必看:6亿参数如何做到≤2GB显存?FP8量化压缩深度解析 你是不是也遇到过这种情况:想在自己的电脑上跑个大模型试试,结果一看显存要求,动辄十几GB,直接劝退?或者好不容易找到一…...
3步搞定B站音频提取:BilibiliDown开源工具的终极指南
3步搞定B站音频提取:BilibiliDown开源工具的终极指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi…...
如何通过3个步骤快速掌握BetaFlight黑匣子日志分析
如何通过3个步骤快速掌握BetaFlight黑匣子日志分析 【免费下载链接】blackbox-log-viewer Interactive log viewer for flight logs recorded with blackbox 项目地址: https://gitcode.com/gh_mirrors/bl/blackbox-log-viewer 你是否曾经在调试无人机飞行问题时感到束手…...
无线通信入门:为什么说DFT是提升OFDM信道估计性能的“降噪神器”?
无线通信中的降噪艺术:DFT如何让OFDM信道估计更精准 想象一下,你正试图在嘈杂的咖啡馆里听清朋友的谈话。背景音乐、周围人的聊天声、杯盘碰撞声都在干扰你获取清晰的信息。无线通信中的信道估计面临类似的挑战——如何在充满噪声的传输环境中࿰…...
从单变量到多变量:ODE与PDE的核心差异与应用场景解析
1. 从自变量数量看本质差异 第一次接触微分方程时,我也曾被ODE和PDE搞得晕头转向。直到有天导师用了个特别形象的比喻:ODE就像观察单车道上的车流,而PDE则是分析整个立交桥的交通网络。这个比方一下子点醒了我——核心差异就在于自变量数量这…...
