Нужна помощь в написании метода parseInt на чистом JavaScript
Имеется строковое (текстовое) представление числа.
Нужно реализовать функцию по конвертированию строкового представления числа, нельзя использовать библиотечные функции такие parseInt и д.р.
У нас имеется функция: charToNumber(char: string) : number
Функция принимает на вход один символ с цифрой и возвращает ее числовое значение.
Например:
charToNumber(“2”) => 2
charToNumber(“F”) => 15
// (F - цифра в шестнадцатеричной системе)
С ее использованием реализовать функцию по конвертированию строкового представления числа. Можно использовать любые операторы (циклы, арифметические операции), нельзя - библиотечные функции.
function convertStringToNumber(stringNumber: string, base: number) : number
{
}
stringNumber - строковое представление числа
base - количество цифр системе счисления, в котором представлено stringNumber.
Примеры того что должно получится на выходе:
convertStringToNumber(“1111”, 2) -> 15
convertStringToNumber(“17”, 8) -> 15
convertStringToNumber(“123”, 10) -> 123
convertStringToNumber(“FF”, 16) -> 255
Ответы (1 шт):
Перевод в данном случае достаточно прост
- нужно бежать по строке
- значение на предыдущем шаге умножить на основание
- прибавить значение текущего символа
Выглядеть это может так:
stringNumber.split('').reduce((acc, cur)=>acc*base + charToNumber(cur), 0);