Во втором цикле for
первое условие перехватывает и добавляет пустые ячейки таблицы для значений ячеек, в которых нет данных. Добавление проверки 0
здесь не поможет, так как вы должны проверить data[row][col]===0
, если хотите сопоставить значения, которые равны 0
, а не ||0
.
В противном случае ваш код работает так, как задумано, и тестирование его на примере Spreadsheet
работает - «если ячейка в Range пуста, добавьте пустую ячейку в таблицу». Вы хотите отфильтровать все пустые ячейки?
Обновление
Я до сих пор не уверен, почему вы хотите отфильтровывать пустые ячейки из HtmlTable
, но если вы хотите, чтобы отображались только ячейки с данными, немного измените ваш оператор if...else
, чтобы учесть это:
if (row===0&&data[0][col]!=='') { //filter out empty header cells;
htmltable += '<th>' + data[row][col] + '</th>';
}else if(data[row][col]!=='') { //filter out empty entries cells
htmltable += '<td style="border:1px solid black;">' + data[row][col] + '</td>';
}