array-to-string-transformer

``` [1,2,3,4,5,6,7,8] -> "1-8" [1,3,4,5,6,7,8] -> "1,3-8" [1,3,4,5,6,7,8,10,11,12] -> "1,3-8,10-12" [1,2,3] -> "1-3" [1,2] -> "1,2" [1,2,4] -> "1,2,4" [1,2,4,5,6] -> "1,2,4-6" [1,2,3,7,8,9,15,17,19,20,21] -> "1-3,7-9,15,17,19-21" [1,2,3,4,5,6,100,1091,199

Usage no npm install needed!

<script type="module">
  import arrayToStringTransformer from 'https://cdn.skypack.dev/array-to-string-transformer';
</script>

README

Преобразование массива чисел в строку

[1,2,3,4,5,6,7,8] -> "1-8"
[1,3,4,5,6,7,8] -> "1,3-8"
[1,3,4,5,6,7,8,10,11,12] -> "1,3-8,10-12"
[1,2,3] -> "1-3"
[1,2] -> "1,2"
[1,2,4] -> "1,2,4"
[1,2,4,5,6] -> "1,2,4-6"
[1,2,3,7,8,9,15,17,19,20,21] -> "1-3,7-9,15,17,19-21"
[1,2,3,4,5,6,100,1091,1999,2000,2001,2002] -> "1-6,100,1091,1999-2002"
[1] -> "1"
[1,3,5,7,9,11] -> "1,3,5,7,9,11"
  • Числа в массиве всегда целые, положительные и отсортированы по возрастанию.

Установка

npm i array-to-string-transformer

Пример использования

import arrayToStringTransformer from 'array-to-string-transformer';

(async () => {
    const range = await arrayToStringTransformer([1,2,3,4,5,6,7,8]);
    console.log(range); // 1-8
})();

Тест

npm test