iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
0
自我挑戰組

Codewar 進進出出 JS/Ruby系列 第 14

停止逆轉單字

  • 分享至 

  • xImage
  •  

題目:
(6 級) Stop gninnipS My sdroW!
撰寫一個 function 接受參數 string,若 string 內的單字含有 5 個以上的字母,則反轉該單字 (如同題目)。

範例:

spinWords( "Hey fellow warriors" )
  => returns "Hey wollef sroirraw"

spinWords( "This is a test")
  => returns "This is a test"
	
spinWords( "This is another test" )
  => returns "This is rehtona test"

Ruby 解法:

def spinWords(string)
  # 先把傳入的參數 string 轉成陣列
  string.split.map { |word|
	
    # 如果裡面的單字字母有 5 個以上
    # 就反轉該字串,反之則直接回傳該單字
    word.length >= 5 ? word.reverse : word
		
  # 最後將陣列轉回字串
  }.join(" ")
end

JavaScript 解法:

function spinWords(string){
  // 先把傳入的參數 string 轉成陣列
  return string.split(" ").map(word => {
	
    // 如果裡面的單字字母小於 5 個
    if (word.length < 5) {
      // 直接回傳該單字
      return word;
    } else {
      // 反之則將該單字轉成陣列並且反轉
      // 最後轉回字串回傳
      return word.split("").reverse().join("")
    }
		
  // 最後將處理過的陣列轉回字串回傳
  }).join(" ")
}

上一篇
羅馬數字
下一篇
一下大一下小
系列文
Codewar 進進出出 JS/Ruby30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言