数组扁平化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() |

相关推荐
2024-10-29
typescript-exercises(三)
青年人的教育是国家的基石。——富兰克林 题面: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970/*Intro: Since we already have some of the additional information about our users, it's a good idea to output it in a nice way.Exercise: Fix type errors in logPerson function. logPerson function should accept both User and Admin and should output relevant information according to the input: occupation for User an...
2024-01-20
uni-app-x
做一个世界的水手,游遍每一个港口。——惠特曼 分享一个跨端框架uni-app-x uni-app x 是什么? | uni-app-x uni-app x,是下一代 uni-app,是一个跨平台应用开发引擎。 uni-app x 没有使用js和webview,它基于 uts 语言。在App端,uts在iOS编译为swift、在Android编译为kotlin,完全达到了原生应用的功能、性能。 可以下载打包后的hello uni-app x的apk来体验。(通过显示界面元素边界可知界面都是原生UI,解包后也不会看到js引擎,里面的html文件是示例中演示web-view组件所用) 这是demo源码:DCloud / hello uni-app x · GitCode 开发者在 uni-app x 中,不能编写js,因为 uni-app x 中不自带js引擎。需使用uts,实现跨端的同时保证最佳性能。 uts 全称 uni type script,是一门跨平台的、高性能的、强类型的现代编程语言。它在不同平台,会被编译为不同平台的native语言,如: web...
2021-11-12
数组解构赋值
倘若A代表人生的成功,那么公式是:A =X+Y+Z。X是工作,Y是游戏,z是保持缄默。——(美)爱因斯坦 我们以前从一个数组中获取第一项,可能是如下写法: 12let list = [1,2,3]let i = list[0] 有了解构赋值,可以如下写法: 12let list = [1,2,3]let [i] = list 如果稍微复杂点,例如下面这样从对象中取出来数组: 12let ruben = {hobby:['anime']}let favorite = ruben.hobby[0] 就可以写成: 12let ruben = {hobby:['anime']}let {hobby:[favorite]} = ruben 如果再复杂点 123let ruben = {hobby:['anime']}let achao = {favorite:undefined}achao.favorite =...
2025-07-01
antdesign3.x中Form.create之后拿ref
相关PR: https://github.com/apache/shenyu-dashboard/pull/534 文档在此: 表单 Form - Ant Design 经过 Form.create 之后如果要拿到 ref,可以使用 rc-form 提供的 wrappedComponentRef,详细内容可以查看这里。 123456class CustomizedForm extends React.Component { ... }// use wrappedComponentRefconst EnhancedForm = Form.create()(CustomizedForm);<EnhancedForm wrappedComponentRef={(form) => this.form = form} />this.form // => The instance of CustomizedForm 如何在函数组件中拿到 form 实例?#你需要通过 forwardRef 和 useImperativeH...
2021-10-13
uniapp拖动排序实现思路
没有哪一个聪明人会否定痛苦与忧愁的锻炼价值。——赫胥黎 找到下载量最多这个组件 https://ext.dcloud.net.cn/plugin?id=1372 导入,不多说 文档示例: 使用示例页面: 123456789101112131415161718复制代码<template> <view class="content"> <HM-dragSorts :list="list" :isLongTouch="true" :rowHeight="55" @change="change" @confirm="confirm" @onclick="onclick"> <template slot="rowContent" slot-scope="{ row }"> ...
2026-01-23
tambo
从不浪费时间的人,没有工夫抱怨时间不够。——杰弗逊 Tambo AI:让 React 界面“根据对话自动长出来”的 Generative UI SDK如果你的用户不该学会使用你的应用,而是应用该学会理解用户,那么 Tambo 的理念会让你眼前一亮。Tambo 是一套专为 React 打造的“Generative UI” SDK:你注册可用的组件,AI 会在自然语言对话中决定渲染哪些组件、以什么参数渲染。对新手和高手呈现出不同的界面,对“我想要的就是那张按地区分组的上季度销售图”这类自然指令,自动生成正确的交互与视图。 仓库:tambo-ai/tambo 官网与文档:tambo.co · docs.tambo.co 包:@tambo-ai/react 许可:MIT(部分工作空间为 Apache-2.0,见各自 LICENSE/NOTICE) 它是什么 一套针对 React 的生成式界面 SDK 让你“注册”组件及其 props schema,然后由 AI 决定何时以及如何渲染 支持一次性渲染的“生成式组件”和可持续交互更新的“可交互组件” 通...

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