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);
我正在尝试编写一些代码来循环创建一些表,但是它不断在循环的开头添加一个未定义
文本,我不知道为什么,其他一切都很好。关于如何发生这种情况有什么想法吗?
fiddle link is here 。感谢您提前提供任何帮助!!
最佳答案
这将解决它:
var tmu = '';
当您声明变量但未分配值时,tmu 将是 undefined
当你这样做时tmu += '<table>';
, tmu
将被强制转换为字符串 - 即未定义。
关于javascript - javascript forEach 输出中未定义的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21328391/