0
我有一個函數返回所有數字的總和對於正數和負數。分割數字並將它們全部添加 - JavaScript
我使用拆分方法並將其先轉換爲字符串,然後使用reduce將它們全部添加。如果這個數字是負數,那麼第一個數字應該算作負數。
function sumDigits(num) {
var output = [],
sNum = num.toString();
for (var i = 0; i < sNum.length; i++) {
output.push(sNum[i]);
}
return output.reduce(function(total, item){
return Number(total) + Number(item);
});
}
var output = sumDigits(1148);
console.log(output); // --> MUST RETURN 14
var output2 = sumDigits(-316);
console.log(output2); // --> MUST RETURN 4
,而不是返回的總和,它返回4592 -1264
我這樣做是正確的還是我需要使用split
功能?或者有沒有更好的方法來做到這一點?
對不起,新手在這裏。
'output.push(SNUM);'你認爲什麼是幹什麼的? – epascarello
我想你會找到你的答案[這裏](https://stackoverflow.com/questions/7784620/javascript-number-split-into-individual-digits)。 – Ozan
您需要推送'sNum [i]'。並跳過'-'。 –