Skip to content

1206 今日总结

今日工作

  • ui 走查项目合并包

今日心情

所见所想,有感而发

总结了 线上赚钱需要的能力!

今日算法

今日学习:

今日复习:

手撕代码

防抖节流等各种手写,http和网络,浏览器原理,性能优化,Webpack

数组扁平化:

js
// 方法一: reduce,  Array.isArray, ...拓展运算符/concat, 递归 flattern

const flattern = (arr = []) => arr.reduce((pre, cur) => Array.isArray(cur) ? [...pre, ...flattern(cur)] : [...pre, cur], [])

const source = [
  1,
  2,
  [ 3,4, 
  [ 5, 6 ]]
]
const result = flattern(source)
console.log('result', result)

// 方法二:while 循环,Array.some, Array.isArray

const flattern = (arr = []) => {
  while(arr.some(item => Array.isArray(item))) {
      arr = [].concat(...arr)
  }
  return arr;
}

const source = [1,2,[3,4, [5, 6]]]
const result = flattern(source)
console.log('result', result)


// 方法3:Array.flat(Infinity)

[1,2,[3,4, [5, 6]]].flat(Infinity)

// 方法4:toString, split, map
// eg:
[1,2,[3,4, [5, 6]]].toString()
// '1,2,3,4,5,6'

const flattern = (arr = [] ) => {
  return arr.toString().split(",").map(Number)
}

const source = [1,2,[3,4, [5, 6]]]
const result = flattern(source)
console.log('result', result)

好文推荐

有感好文

项目/博客推荐

值得学习的项目/作者

面经相关

八股文相关

Released under the MIT License.