function sum(values, valueof) {
let sum = 0;
if (valueof === undefined) {
for (let value of values) {
if ((value = +value)) {
sum += value;
}
}
} else {
let index = -1;
for (let value of values) {
if ((value = +valueof(value, ++index, values))) {
sum += value;
}
}
}
return sum;
}