你將會得到一個單詞,你的任務是返回該單詞的中間字符。如果單詞的長度是奇數,則返回中間字符。如果單詞的長度是偶數,則返回中間的兩個字符。
#範例:
Kata.getMiddle("test") 應返回 "es"
Kata.getMiddle("testing") 應返回 "t"
Kata.getMiddle("middle") 應返回 "dd"
Kata.getMiddle("A") 應返回 "A" #輸入
一個長度在0 < str < 1000之間的單詞(字符串)。你不需要為此進行測試。這只是為了告訴你不需要擔心你的解決方案超時。
#輸出
以字符串表示的單詞的中間字符(字符)。
依據題意可整理出以下重點:
function getMiddle(s) {
let start = 0;
let end = 0
if (s.length % 2 !== 0) {
start = Math.ceil(s.length / 2) - 1;
return s[start];
} else {
start = Math.ceil(s.length / 2 - 1);
end = start.ceil % 2 ? start : start + 2;
return s.slice(start, end);
}
}
三元運算子
function getMiddle(s) {
let middle = Math.floor(s.length / 2);
return s.length % 2 ? s[middle] : s.slice(middle - 1, middle + 1);
}
今天就介紹到這裡,如果大家有更好的寫法歡迎一起來討論~