[7kyu]Band name generator

該算法題來(lái)自于 codewars【語(yǔ)言: javascript】,翻譯如有誤差,敬請(qǐng)諒解~

  • 任務(wù)
  • 我的朋友想要起一個(gè)樂(lè)隊(duì)名。她喜歡使用以下公式命名樂(lè)隊(duì): 'The' + 首字母大寫的單詞 dolphin -> The Dolphin
  • 然而,當(dāng)一個(gè)單詞的第一個(gè)和最后一個(gè)字母相同時(shí),她喜歡重復(fù)該單詞兩次,并將它們與第一個(gè)和最后一個(gè)字母連接在一起,然后合并成一個(gè)如下所示的單詞(前面沒(méi)有“The”
    alaska -> Alaskalaska europe -> Europeurope
  • 請(qǐng)編寫一個(gè)函數(shù),接收一個(gè)參數(shù)(字符串),返回一個(gè)符合上述要求的樂(lè)隊(duì)名稱。

  • 解答
  • 其一
const bandNameGenerator = str => {
      const subStr = str.slice(1,str.length);
      return str.charAt(str.length - 1) == str.charAt(0) ? str.charAt(0).toUpperCase() + subStr.repeat(2) : 'The ' + str.charAt(0).toUpperCase() + subStr;
}
  • 其二
const bandNameGenerator = s => s[0] != s[s.length-1] ? "The " + s[0].toUpperCase() + s.slice(1) : s[0].toUpperCase() + s.slice(1) + s.slice(1);
  • 其三
const startEndSame = (str = '') => str[0] === str[str.length - 1];
const repeat = (str) => `${ str.slice(0, -1) }${ str }`;
const capitalize = (str) => `${ str[0].toUpperCase() }${ str.slice(1) }`;
const bandNameGenerator = (str) => startEndSame(str) ? capitalize(repeat(str)) : `The ${ capitalize(str) }`;
  • 其四
function bandNameGenerator(s) {
      return /^(.).*\1$/.test(s)?s[0].toUpperCase()+s.slice(1)+s.slice(1):"The "+s[0].toUpperCase()+s.slice(1)
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問(wèn)題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,927評(píng)論 0 33
  • Javascript有很多字符串的方法,有的人有W3C的API,還可以去MDN上去找,但是我覺(jué)得API上說(shuō)的不全,...
    頑皮的雪狐七七閱讀 2,369評(píng)論 0 2
  • 我不認(rèn)為自己是備胎這類人,從不,只不過(guò)她說(shuō)我是,或許這也造成了我給他的第一印象吧,一個(gè)自以為的備胎。 講述我自己的...
    呼吸的鯨魚閱讀 402評(píng)論 0 0
  • 早加餐:麥片午加餐:牛奶麥片晚水果:西梅,蘋果 參考目標(biāo): 1份肉2份豆制品3份“新鮮”水果4份谷物/薯5份蔬菜,...
    靜趣_兒童心理師閱讀 194評(píng)論 0 0
  • 娜娜是我所有朋友中年齡最小但感情史最豐富的女生,22歲的她談過(guò)三次戀愛(ài),其間還有過(guò)表白失敗的經(jīng)歷。 娜娜的初...
    周香蕓閱讀 269評(píng)論 0 2

友情鏈接更多精彩內(nèi)容