数组扁平化flat
发表于|更新于
|浏览量:
还保持着较为清醒的头脑,就决然不能把人生之船长期停泊在某个温暖的港湾。——路遥《早晨从中午开始》
在前端开发中可能会有这样的需求:
将一个数组中的数组拆分出来放到原数组中
那么我们就可以使用flat函数
1 | [1,[2,3,[4,5,6,[7,8,9]]]].flat() |

flat中可以传入参数为数字,表示你要拆分数组的层数


如果全部拆分,可以使用flat(Infinity)
1 | [1,[2,3,[4,5,6,[7,8,9]]]].flat(Infinity) |

如果是较为复杂点的对象,则就只能使用map先取出来,再使用flat
1 | [{ruben:[1]},{ruben:[2,3]}].map(({ruben})=>ruben).flat() |

相关推荐
2022-10-16
ics-to-json
我无论作什麽,始终在想着,只要我的精力允许我的话,我就要首先为我的祖国服务。——(苏联)巴甫 昨天提到可以订阅ics,那能不能将ics转json呢?可以试试这个ics-to-json github:https://github.com/cwlsn/ics-to-json 使用: 123456789npm i ics-to-json// 或者cnpm i ics-to-json// 或者pnpm i ics-to-json// 或者yarn add ics-to-json// 或者tyarn add ics-to-json 我这里通过browserify测试: 1cnpm install -g browserify 编写main.js 12const icsToJson = require('ics-to-json')window.icsToJson = icsToJson.default 1browserify main.js -o bundle.js 编写页面 123456789101112<!DOCTYPE html><htm...
2024-07-03
js页面历史返回
历史是一堆灰烬,但灰烬深处有余温。——黑格尔 我们可以使用history.back()来进行页面返回 history的文档: History API - Web API | MDN 除了返回还可以前进 1history.forward(); 以及 12// 向后跳转一个页面(等价于调用 back())history.go(-1); 然后还有 12// 向前跳转一个页面,就像调用 forward()history.go(1); 当然传入0就是刷新 123// 以下语句都具有刷新页面的效果history.go(0);history.go(); 还有查看页面栈长度 1const numberOfEntries = history.length; 补充: 12345678910window.addEventListener("popstate", (event) => { alert(`位置:${document.location},状态:${JSON.stringify(event.state)}...
2025-02-18
scopedb官网首页
我来到这个世界,为了看看太阳和蓝色的地平线。——《城门开》 https://github.com/scopedb/scopedb-site/pull/32 最近忙着给scopedb做了一个最简单的官网首页 这里说到一些细节吧,首先是适配移动端或者说小尺寸屏幕,这里在没有移动端对应UI设计图的情况下,我们采取pc的布局,因此字体单位使用的vw 然后是这张图片,未来可能会改为带动画的,效果会比较惊艳和抢眼 首页tsx如下 123456789101112131415161718192021222324252627282930313233343536373839import React from "react";import styles from './index.module.css';import Layout from "@theme/Layout";import clsx from "clsx";function HomepageBanner(): React.JSX.Element ...
2022-12-06
js小知识
盲目的仇恨心理是很可怕的,,甚至会导致本身的毁灭——沙米亚金 这里b由于没有var、let、const等关键字定义,变成了全局变量 而a由于作用域限制,因此提示a is not defined
2024-10-14
Apache-ShenYu动态扩缩容前端对接
能够隐藏自己的才能是一种很大的才能。——罗休夫柯 pr链接: https://github.com/apache/shenyu-dashboard/pull/489 see gif: 后端也包含了一个提交sql和优化代码的pr: [type:improve] Add dynamically scale admin page by VampireAchao · Pull Request #5706 · apache/shenyu · GitHub 菜单的: 12345INSERT INTO `resource` VALUES ('1844015648095666176', '1346776175553376256', 'SHENYU.MENU.SYSTEM.MANAGMENT.SCALE', '', '/system/scale', '', 1, 4, 'sliders', 0, 0, '', 1, ...
2023-03-26
for...in、for...of、for await...of
处世应当谦虚,切忌轻人傲世。——佚名 简单说下区别: for...in遍历出来的是key 12345678910var obj = {a:1, b:2, c:3};for (var prop in obj) { console.log("obj." + prop + " = " + obj[prop]);}// Output:// "obj.a = 1"// "obj.b = 2"// "obj.c = 3" for...of遍历出来的是元素 123456789const array1 = ['a', 'b', 'c'];for (const element of array1) { console.log(element);}// Expected output: "a"// Expected output: "b&quo...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog