var tmu, categories = [['Morning','am'],['Evening','pm']],
days = ['mon', 'tue', 'wen', 'thu', 'fri', 'sat', 'sun'],
fullDay, i;
tmu += '<table>';
categories.forEach(function(ele){
tmu += '<tr id="periodTitle">';
tmu += '<td colspan=7 style="text-align:center;">'+ele[0]+'</td>';
tmu += '</tr>';
for(i = 0; i <= 6; i++){
tmu += '<td id="'+days[i]+'-'+ele[1]+'">x</td>';
}
});
tmu += "</table>";
console.log(tmu);
我正在尝试编写一些代码来循环一些表的创建,但是它一直在循环的开头添加
undefined
文本,我不确定为什么,其他所有方法都很好。关于如何发生的任何想法?fiddle link is here。感谢您的任何帮助!
最佳答案
这将解决它:
var tmu = '';
在声明变量但未分配值时,tmu将为
undefined
,而当您执行tmu += '<table>';
时,tmu
将被强制转换为字符串-即未定义。关于javascript - javascript forEach输出中的未定义字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21328391/