首頁 > web前端 > js教程 > TIL:如何修剪尾隨零【CodeWars】

TIL:如何修剪尾隨零【CodeWars】

DDD
發布: 2024-12-11 07:57:10
原創
846 人瀏覽過

TIL: How to Trim Trailing Zeros【CodeWars】

概述 ?

英雄沒有零

此問題需要從數字中刪除尾隨零,同時保持其完整性。

輸入和輸出範例:

1450 -> 145
960000 -> 96
1050 -> 105
-1050 -> -105
登入後複製

難度等級:

8kyu(Codewars 上最簡單的關卡)

解決方案?

解決方案1

function noBoringZeros(n) {
  while (n % 10 === 0 && n !== 0) {
    n = n / 10
  }
  return n
}
登入後複製
  • 使用 while 迴圈的過程程式設計方法。

解決方案2

const noBoringZeros = n => n % 10 === 0 && n !== 0 ? noBoringZeros(n / 10) : n;
登入後複製
  • 使用遞歸的聲明式程式設計方法。

解決方案3

function noBoringZeros(n) {
  return +`${n}`.replace(/0*$/, "");
}
登入後複製
  • 使用正規表示式刪除尾隨零。
  • 使用範本文字 (${}) 將數字轉換為字串,套用 .replace(),並使用運算子將結果重新轉換為數字。

解決方案4

[][(![]+[])[+!![]]+(!![]+[])[+[]]][([]+[][(![]+[])[+!![]]+(!![]+[])[+[]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+!![]]+(!![]+[])[+[]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!
![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+!![]]+(!![]+[])[+[]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+!![]]+(!![]+[])[+[]]]
)[+!![]+[+[]]]+(!![]+[])[+!![]]]((!![]+[
登入後複製

(這是摘錄)

  • 過於複雜的解決方案。 (但我喜歡它。)

討論和見解?

我更喜歡“解決方案 3”,因為它簡單且易於閱讀,同時仍然演示了一些有用的技術。

如果您對這些解決方案感到好奇或想探索更多挑戰,請造訪此處。

感謝您的閱讀! ?

以上是TIL:如何修剪尾隨零【CodeWars】的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板