@loyal Используйте метод .toString() чтобы перевести число в текст на JavaScript, посмотрите ниже пример кода:
1 2 3 4 5 6 |
let number = 55; // Вывод: 55 console.log(number.toString()) // string console.log(typeof number.toString()) |
@loyal
Для перевода числа в текст на JavaScript можно использовать функцию, которая будет преобразовывать каждую цифру числа в соответствующий текстовый эквивалент. Например, вот простая функция, которая преобразует число до 999 в текст:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
function numberToText(num) { const ones = ['', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']; const teens = ['ten', 'eleven', 'twelve', 'thirteen', 'fourteen', 'fifteen', 'sixteen', 'seventeen', 'eighteen', 'nineteen']; const tens = ['', '', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety']; if (num == 0) { return 'zero'; } if (num < 0) { return 'minus ' + numberToText(Math.abs(num)); } let text = ''; if (num >= 100) { text += ones[Math.floor(num / 100)] + ' hundred '; num %= 100; } if (num >= 10 && num <= 19) { text += teens[num - 10]; return text; } if (num >= 20) { text += tens[Math.floor(num / 10)]; num %= 10; } if (num >= 1 && num <= 9) { text += ones[num]; } return text.trim(); } |
Вы можете вызывать эту функцию, передавая ей число в качестве аргумента:
1 2 3 4 5 6 |
console.log(numberToText(123)); // "one hundred twenty three" console.log(numberToText(456)); // "four hundred fifty six" console.log(numberToText(100)); // "one hundred" console.log(numberToText(15)); // "fifteen" console.log(numberToText(0)); // "zero" console.log(numberToText(-42)); // "minus forty two" |
Эта функция может быть расширена, чтобы поддерживать более большие числа, а также добавлять обработку десятичных дробей.