我有兩個數組,一個使用稅碼(emptaxdeductcode),一個使用這些稅碼支付的金額(emptaxamt)。查找數組中某些字符串的總數
我想查找支付的金額爲,只有稅號31。這些稅碼有不同數量的字符,但我需要的字符總是12個字符。
試圖用一個簡單的for循環,但它出現在第3行它總是顯示0,甚至爲那些有問題的稅法(S)被打破:
var returnedValue = 0;
for (var q = 0; q < emptaxdeductcode.length; q++) {
if (emptaxdeductcode[q].substring(10,11) == "31") {
returnedValue += emptaxamt[q];
} else {
0;
}
}
returnedValue;
我試着以下只是一個測試,它返回true: (這個稅碼並不總是在[5],所以我不能只用這個。加上有多個稅號碼以31結尾的人)
if (emptaxdeductcode[5].substring(10,11) == "31") {
"TRUE";
} else {
"FALSE";
}
所以它必須是for循環中的子字符串,這是造成親blems。任何指導將不勝感激!
編輯:這是一個數據樣本。道歉,如果這種出口奇怪 - 不完全確定如何使表:
emptaxdeductcode | emptaxamt
--- | ---
00-10 | 55.36
00-11 | 8.33
00-12 | 35.63
39-20 | 17.64
39-22 | 0.40
390770040-31 | 9.48
390770040-32 | 2.00
Edit2:我用來構建這個報表的這個軟件不支持很多JS工具/庫。很多帖子在stackoverflow上,對我來說有類似的問題已經用'prototype'函數或者AngularJS和類似的東西解決了。不幸的是,這不適合我。
它如何在第3行中斷? – epascarello
嘗試在處理它之前記錄emptaxdeductcode [q]的值並查看錯誤發生之前的內容。 emptaxdeductcode可以包含任何空值? – alebianco
你能展示你的數據是怎樣的嗎? –