Вопрос по методу reduce

Или не reduce, в общем непонятный глюк, в комментариях в коде подробнее.

      let redu = [1,2,9,0].reduce(function(a,b){return a + b}, 0)  //сумма элементов массива
         console.log (redu+typeof redu)// сумма выводится правильно, тип правильный - число
            
        function sumDigits(number) {
               let res = Math.abs(number).toString().split('').reduce(function(a,b){return a + b}, 0)
               return res
            }
            
        let ressum = sumDigits (1290)    
        console.log (ressum+" sumDigits (1290)")// функция не считает сумму
        console.log (typeof ressum) // неправильный тип string вместо number
        
        /*Если метод reduce работает корректно, 
    это видно по первой записи, значит он получает не массив
    и поэтому сумма не считается, проверяю*/
        
        function whatReduceGet(number) {
               let res = Math.abs(number).toString().split('')
               return res
            }
            
        ressum = whatReduceGet (1290)    
        console.log (ressum+" whatReduceGet (1290)")// reduce получает массив, 
        
        /*получается непонятно, если reduce получает массив [1,2,9,0],
 и с этим массивом он корректно работает,
 то почему не работает функция полностью?*/

Ответы (0 шт):