背景:将嵌套数组展平成一维数组。二维乃至于多维数组变为一维数组。
核心代码:
/**
* 将嵌套数组展平成一维数组。
*
* @param {array} arr - 需要展平的数组
* @return {array} 展平后的一维数组
*/
const flat = (arr) => {
return arr.reduce((pre, value) => {
return Array.isArray(value) ? [...pre, ...flat(value)] : [...pre, value];
}, []);
};
控制台运行效果: