[7kyu]Mumbling

该算法题来自于 codewars【语言: javascript】,翻译如有误差,敬请谅解~

[7kyu]Mumbling_第1张图片

  • 任务
  • 编写一个函数 accum,参数是一个字符串,仅包含来自a..z和A..Z的字母。
  • 例如:
    accum("abcd"); // "A-Bb-Ccc-Dddd"
    accum("RqaEzty"); // "R-Qq-Aaa-Eeee-Zzzzz-Tttttt-Yyyyyyy"
    accum("cwAt"); // "C-Ww-Aaa-Tttt"

  • 解答
  • 其一
const accum = s => [...s].map((el,index)=> el.toUpperCase() + el.toLowerCase().repeat(index)).join('-');
  • 其二
const repeat = (s, n) => Array.from({length: n}, () => s).join("")
const accum = (s) => s.split("").map((c, i) => c.toUpperCase() + repeat(c.toLowerCase(), i)).join("-")
  • 其三
const accum = s => Array.from(s, (c, i) => c.toUpperCase() + c.toLowerCase().repeat(i)).join('-');
  • 其四
const accum = s => s.split('').map((v, i) => v.toUpperCase() + Array(i + 1).join(v.toLowerCase())).join('-');

你可能感兴趣的:([7kyu]Mumbling)