Здравствуйте. Есть таблица, пытаюсь подсчитывать в каждой строке сумму разниц всех чисел в каждой ячейке. То есть в каждой ячейке есть значение 9/18 или "В", то есть выходной. Соответственно если значение 9/18, то высчитываю разницу и складываю все разницы в каждой строке, если "В", то ничего с этой ячейкой не делаю.
<td class="width20px aligner" id="1-8-2018">9/18</td><td class="width20px aligner" id="2-8-2018">9/18</td><td class="width20px aligner" id="3-8-2018">9/18</td><td class="graph-table-holiday width20px aligner" id="4-8-2018">В</td><td class="graph-table-holiday width20px aligner" id="5-8-2018">В</td><td class="width20px aligner" id="6-8-2018">9/18</td><td class="width20px aligner" id="7-8-2018">9/18</td><td class="width20px aligner" id="8-8-2018">9/18</td><td class="width20px aligner" id="9-8-2018">9/18</td><td class="width20px aligner" id="10-8-2018">9/18</td><td class="graph-table-holiday width20px aligner" id="11-8-2018">В</td><td class="graph-table-holiday width20px aligner" id="12-8-2018">В</td><td class="width20px aligner" id="13-8-2018">9/18</td><td class="width20px aligner" id="14-8-2018">9/18</td><td class="width20px aligner" id="15-8-2018">9/18</td><td class="width20px aligner" id="16-8-2018">9/18</td><td class="width20px aligner" id="17-8-2018">9/18</td><td class="graph-table-holiday width20px aligner" id="18-8-2018">В</td><td class="graph-table-holiday width20px aligner" id="19-8-2018">В</td><td class="width20px aligner" id="20-8-2018">9/18</td><td class="graph-table-holiday width20px aligner" id="21-8-2018">В</td><td class="width20px aligner" id="22-8-2018">9/18</td><td class="width20px aligner" id="23-8-2018">9/18</td><td class="width20px aligner" id="24-8-2018">9/18</td><td class="graph-table-weekday width20px aligner" id="25-8-2018">12/21</td><td class="graph-table-holiday width20px aligner" id="26-8-2018">В</td><td class="width20px aligner" id="27-8-2018">9/18</td><td class="width20px aligner" id="28-8-2018">9/18</td><td class="width20px aligner" id="29-8-2018">9/18</td><td class="graph-table-holiday width20px aligner" id="30-8-2018">В</td><td class="graph-table-holiday width20px aligner" id="31-8-2018">В</td><td class="aligner">168</td><td>168</td></tr>
// получаю строку если у нее есть ID
if (TRId != null) {
// объявляю переменную в которой будет
// сумма всех разниц ячеек данной строки
difference2 = 0;
// для каждой ячейки в цикле произвожу действия
elem.querySelectorAll('td').forEach(function(elem) {
var TDId = elem.getAttribute('id');
if (TDId != null) {
var currentTDVal = elem.innerHTML;
currentTDVal = currentTDVal.substring(0,5);
if (currentTDVal.indexOf('/') > 0) {
var hours = currentTDVal.split('/');
var difference = hours[1] - hours[0] - 1;
}
difference2 = difference2 + difference;
}
}
}
Так вот в difference2 всегда значение NaN. Проверил каждую ячейку строки alert-ом, и действительно в конце каждой строки откуда-то появляется значение NaN. Хотя по логике вещей уже после проверки if (currentTDVal.indexOf('/') > 0) не должно ничего попадать, кроме значений 9/18. Не могу понять, откуда берется этот NaN?