Javascript 为什么我创建4个div的循环函数是错误的?
我正在练习使用循环,我所做的是:Javascript 为什么我创建4个div的循环函数是错误的?,javascript,loops,for-loop,Javascript,Loops,For Loop,我正在练习使用循环,我所做的是: var writing = function() { for (var i = 0, n = 4; i < n; i++) { document.createElement("div") += 1; } }; writing(); var writing=function(){ 对于(变量i=0,n=4;i
var writing = function() {
for (var i = 0, n = 4; i < n; i++) {
document.createElement("div") += 1;
}
};
writing();
var writing=function(){
对于(变量i=0,n=4;i
它不起作用,为什么?它应该创建4个div。这是我的解决方案
HTML:
上面的文本是动态创建的。
JS:
var writing=function(){
var currentDiv=document.getElementById(“div1”);
对于(变量i=0;i<4;i++){
var newDiv=document.createElement(“div”);
var newContent=document.createTextNode(“您好,欢迎光临!”);
newDiv.appendChild(newContent);
document.body.insertBefore(newDiv,currentDiv);
}
};
写作();
我希望这对你有帮助
单击查看我的解决方案也差不多。谈论你的代码 这条线
document.createElement("div") += 1;
是无效的赋值,不会增加DOM元素计数。事情要简单。下面是我的编辑
var writing = function() {
var elm;
for (var i = 0; i < 4; i++) {
elm = document.createElement("div");
document.body.appendChild(elm);
}
};
var writing=function(){
var-elm;
对于(变量i=0;i<4;i++){
elm=document.createElement(“div”);
文件.正文.附件(elm);
}
};
这是一个正在工作的..你说的“它没有工作”是什么意思?请更具体一点创建元素并不意味着它会显示在页面上。@chiwangc这个想法很简单。创建一个div 4次并显示在页面上。它不显示anything@u_mulder那么我遗漏了什么呢?从控制台开始,看看报告了哪些类型的错误。如果您不知道控制台是什么,请在做其他事情之前立即了解它。您还需要了解DOM调用,例如
appendChild
。将1添加到元素中的意图是什么?这部分让我感到困惑:var currentDiv=document.getElementById(“div1”);如果没有div1,我们为什么需要这个?我的意思是,如果没有div,为什么每次都要通过循环重新检索currentDiv
?我认为它更干净,但我不想附加任何文本。删除包含文本的变量会破坏我在没有点击的情况下制作的JSFIDLE版本的函数。您是如何学会编写这么好的代码的?我正在学习一本有说服力的javascript书,并完成了第二章控制流等。因为这些示例都是使用console.log的,所以我想看看如何在DOM中实现它。整个for循环是一个名为elm的变量吗?为什么elm后面没有=号,我看到您添加了分号我有意在click handler上调用您的函数以控制执行和工作..:)您在elm中使用的这种变量类型是什么?通常情况下,变量have=after them做编码就是你在讲一个故事,这完全是关于你的想象力。JavaScript不是强类型语言,如果变量未定义,它不会阻止您。
document.createElement("div") += 1;
var writing = function() {
var elm;
for (var i = 0; i < 4; i++) {
elm = document.createElement("div");
document.body.appendChild(elm);
}
};