Kata Practice - Convert number to reversed array of digits (JavaScript)
這個系列會把自己練習過的 Kata 題目記錄下來,希望除了記錄的性質以外也能夠觀察自己撰寫程式邏輯的進化過程。如果有幸看到這邊的話也可以參考一下,再到 Codewars 的網站註冊一個帳號試著玩看看,自己蠻喜歡整個網站的得分和排行榜設定,會讓人越寫越有成就感喔!
題目
Given a random non-negative number, you have to return the digits of this number within an array in reverse order.
1 | Input => Output |
自己的解法
1 | const digitize = n => |
解題脈絡
一開始沒注意到型別就直接用了 split()
這個方法,所以後來發現是數字之後就用 toString()
先把數字轉成字串,再使用 split 和 reverse 把順序顛倒過來,最後 test 的時候發現自己忘記把型別轉回數字了,就使用 map 將每一個 string 轉 number 就通過 test 了。
其他人的解法
1 | function digitize(n) { |
選擇記錄這個解法的原因
看了這個解法之後才發現其實可以使用 String()
這個方法就好了,中間的分隔一樣使用 split()
後使用 map()
將原本的字串轉為數字,不過第一次知道可以直接使用 Number
在 map
的參數裡去轉換值。
觀念釐清
練習到現在好像都是在學別人不同的解法,剛開始的時候好像連解法都想不出來,不過後來發現常見的陣列和字串的處理好像就是那些而已 XDDD
那我們就下次見ʘ‿ʘ