Javascript 循环创建未定义的项
这是我的密码:Javascript 循环创建未定义的项,javascript,Javascript,这是我的密码: var instrukceTexty = [ ["Nadpis", "Text instrukce"], ["Nadpis 2", "Text instrukce 2"], ["Nadpis 3", "lorem"] ]; function zobrazInstrukci ( ) { var obrazovka; for ( var i = 0; i < instrukceTexty.length; i += 1 ) { obrazovka
var instrukceTexty = [
["Nadpis", "Text instrukce"],
["Nadpis 2", "Text instrukce 2"],
["Nadpis 3", "lorem"]
];
function zobrazInstrukci ( ) {
var obrazovka;
for ( var i = 0; i < instrukceTexty.length; i += 1 ) {
obrazovka += '<div><h1>' + instrukceTexty[i][0] + '</h1>';
obrazovka += '<p>' + instrukceTexty[i][1] + '</p></div>';
}
document.write( obrazovka );
}
zobrazInstrukci(instrukceTexty);
var instrukceTexty=[
[“Nadpis”、“文本指令”],
[“Nadpis 2”,“文本指令2”],
[“Nadpis 3”,“lorem”]
];
函数zobrazInstrukci(){
var obrazovka;
对于(变量i=0;i';
}
文件编写(obrazovka);
}
zobrazInstrukci(Instruketexty);
如果在第一个div未定义文本之前运行它。我不知道为什么 因为您正在附加到
未定义的
更换这条线
var obrazovka;
与
变量obrazovka
已声明但未初始化。尝试将未初始化的变量用作字符串将返回字符串“undefined”
要解决这个问题,只需给它一个字符串值nothing<代码>var obrazovka=''代码>并且您的代码应该可以工作。var instrukceTexty=[
var instrukceTexty = [
["Nadpis", "Text instrukce"],
["Nadpis 2", "Text instrukce 2"],
["Nadpis 3", "lorem"]
];
function zobrazInstrukci (instrukceTexty) {
var obrazovka='';
for ( var i = 0; i < instrukceTexty.length; i += 1 ) {
obrazovka += '<div><h1>' + instrukceTexty[i][0] + '</h1>';
obrazovka += '<p>' + instrukceTexty[i][1] + '</p></div>';
}
document.write( obrazovka );
}
zobrazInstrukci(instrukceTexty);
[“Nadpis”、“文本指令”],
[“Nadpis 2”,“文本指令2”],
[“Nadpis 3”,“lorem”]
];
函数zobrazInstrukci(instruksetexty){
var obrazovka=“”;
对于(变量i=0;i';
}
文件编写(obrazovka);
}
zobrazInstrukci(Instruketexty);
函数参数丢失,请尝试以下代码初始化变量“obrazovka”时不带任何值,以便从技术上讲它具有未定义的值。然后将html附加到未定义的
// equivalent to var obrazovka = undefined;
var obrazovka;
一种解决方案是使用默认值初始化此变量,例如
var obrazovka = "";
或者,如果您能够使用ES2015功能,则将其设置为功能的默认参数,例如:
function zobrazInstrukci (instrukceTexty = [], obrazovka = "" ) {
for ( var i = 0; i < instrukceTexty.length; i += 1 ) {
obrazovka += '<div><h1>' + instrukceTexty[i][0] + '</h1>';
obrazovka += '<p>' + instrukceTexty[i][1] + '</p></div>';
}
document.write( obrazovka );
}
函数zobrazInstrukci(instrukceTexty=[],obrazovka=”“){
对于(变量i=0;i';
}
文件编写(obrazovka);
}
只是一个旁注!!,document.write并不是操纵DOM的理想方法,对于像这样的小事情来说,这不是什么大问题,但要注意,如果应用程序变得更大,我建议避免这样做。
function zobrazInstrukci (instrukceTexty = [], obrazovka = "" ) {
for ( var i = 0; i < instrukceTexty.length; i += 1 ) {
obrazovka += '<div><h1>' + instrukceTexty[i][0] + '</h1>';
obrazovka += '<p>' + instrukceTexty[i][1] + '</p></div>';
}
document.write( obrazovka );
}