Home >Web Front-end >JS Tutorial >TIL: How to Trim Trailing Zeros【CodeWars】

TIL: How to Trim Trailing Zeros【CodeWars】

DDD
DDDOriginal
2024-12-11 07:57:10841browse

TIL: How to Trim Trailing Zeros【CodeWars】

Overview ?

No zeros for heros

This question requires removing trailing zeros from a number while preserving its integrity.

Input and Output Examples:

1450 -> 145
960000 -> 96
1050 -> 105
-1050 -> -105

Difficulty Level:

8kyu (easiest level on Codewars)

Solutions ?

Solutions 1

function noBoringZeros(n) {
  while (n % 10 === 0 && n !== 0) {
    n = n / 10
  }
  return n
}
  • Procedural programming approach using while loop.

Solutions 2

const noBoringZeros = n => n % 10 === 0 && n !== 0 ? noBoringZeros(n / 10) : n;
  • Declarative programming approach using recursion.

Solutions 3

function noBoringZeros(n) {
  return +`${n}`.replace(/0*$/, "");
}
  • Uses a regular expression to remove trailing zeros.
  • Converts the number to a string using template literals (${}), applies .replace(), and reconverts the result to a number using the operator.

Solutions 4

[][(![]+[])[+!![]]+(!![]+[])[+[]]][([]+[][(![]+[])[+!![]]+(!![]+[])[+[]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+!![]]+(!![]+[])[+[]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!
![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+!![]]+(!![]+[])[+[]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+!![]]+(!![]+[])[+[]]]
)[+!![]+[+[]]]+(!![]+[])[+!![]]]((!![]+[

(here's an excerpt)

  • Overly complex solution. (but I like it.)

Discussion and Insights ?

I prefer "Solution 3" because it's simple and reader-friendly while still demonstrating some useful techniques.

If you're curious about these solutions or want to explore more challenges, visit here.

Thank you for reading! ?

The above is the detailed content of TIL: How to Trim Trailing Zeros【CodeWars】. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn