@towncitybr

Можно ли улучшить код?

если да, то как
или нормально?

https://jsfiddle.net/kwdg1e8r/
  • Вопрос задан
  • 137 просмотров
Решения вопроса 3
Вполне нормально!
var nums = 123123;
var arr = `${nums}`.split('');
var result1 = 0;
var result2 = 0;

arr.forEach((curr, index) => {
  (index <= 2) ? result1 += Number(curr) : result2 += Number(curr);
})

console.log((result1 == result2) ? 'сумма первых цифр равняется остальным трем' : 'нет, не равняется')
Ответ написан
хотя бы так
const nums = 123123;
const arr = `${nums}`.split('');
let result1 = 0;
let result2 = 0;

arr.forEach((item, index) => {
  index <= 2 ? result1 += +item : result2 += +item;
})

if (result1 === result2) {
  console.log('сумма первых цифр равняется остальным трем');
} else {
  console.log('нет, не равняется');
}
Ответ написан
delphinpro
@delphinpro
frontend developer
Array.prototype.amount = function() {
    return this.reduce((a, i) => a + Number(i), 0);
}

let nums = 123123;
let arr = `${nums}`.split('');

const sum1 = arr.slice(0, 3).amount();
const sum2 = arr.slice(3, 6).amount();

if (sum1 == sum2) {
    console.log('сумма первых цифр равняется остальным трём');
} else {
    console.log('нет, не равняется');
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
VlasenkoFedor
@VlasenkoFedor
Программист: php, js, go
Улучшенное решение суммы цифр чисел числа
const sumDigits = n => --n % 9 + 1
const checkThreeDigits = n => sumDigits(n % 1000) === sumDigits(n / 1000 | 0)
    ? 'сумма первых цифр равняется остальным трем' : 'нет, не равняется'
console.log(checkThreeDigits(123312))
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы