js reduce

by weiming le

Babel + JSX

// 数组扁平化
var flattened = [
  [0, 1],
  [2, 3],
  [4, 5]
].reduce((acc, cur, currentIndex, arr) => {
  return acc.concat(cur)
}, [])
console.log(flattened)
var minChar = (str) => {
  var counts = [...new Set(str)].map((v,i) => {
    return { ch: v,len: str.split(v).length-1 }
  }).reduce((acc,cur) => {
    return acc.len <= cur.len ? acc : cur
  })
  console.log(`最短最近的字符是${counts.ch},长度为${counts.len}`)
  return counts
}
minChar('abcdef')
minChar('abcabc')
minChar('aabbcde')
minChar('1222333abcdef')