标签:知识点 arr 12 const cur -- JSON flatten 数组
定义:将一个多维数组变为一个一维数组
方法一:flat()
console.log(arr.flat(Infinity))
方法二:正则表达式,弊端:把数组变成字符串
const res2 = JSON.stringify(arr).replace(/\[|\]/g, '').split(',')
方法三:正则改良版本
const res3 = JSON.parse('[' + JSON.stringify(arr).replace((/\[|\]/g, '')+ ']'))
方法四:reduce
const flatten = arr =>{
return arr.reduce(
(pre, cur) => {
return pre.concat(Array.isArray(cur) ? flatten(cur) : cur);
}
)
}
const res4 = flatten(arr);
方法五:函数递归
const res5 = [];
const fn = arr => {
for (let i = 0; i < arr.length; i++){
if (Array.isArray(arr[i])) {
fn(arr[i]);
}else {
res5.push(aee[i]);
}
}
}
标签:知识点,arr,12,const,cur,--,JSON,flatten,数组 来源: https://blog.csdn.net/weixin_47003395/article/details/118104905
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。