Учу js. Нужно было сделать программку, которая суммирует все числа в объекте, и если это не число просто пропускает его.
Возможно задача и простая, но не для меня, видимо.
Код:
const salaries = {"Vasiliy": 100,"Piotr": 300,"Daria": 250,"isPaid": false};
function sum(obj) {
var sum = 0;
for(var el in obj) {
if( obj.hasOwnProperty(el) ) {
if (!isNaN(obj[el])) {
sum += parseFloat( obj[el] );
}
}
}
return sum;
}
alert(sum(salaries))
На первый взгляд все суммируется и норм, но почему-то игнорируется !isNaN и вместе с числами пытается суммироваться "isPaid", равная false. В итоге, что логично, пользователю выводится NaN.
Скажите пожалуйста - в чём проблема?