for循环输出的值

for循环输出的值

1
2
3
for (var i = 1;i <= 100;i++){
            document.write(i+"<br />");
        }

这里面浏览器最终的输出是1到100的数字。这1到100的数字他存在哪里?我很疑惑为什么这个过程不是电脑在心里面数1/2/3/4.。。。一直到100然后最终在终端显示100这个数字而是吧1到100都展现出来了。

也就是说这个for循环不是一直在循环吗第一遍是1.第二遍是2.一直到100.那他这个过程中的值在循环的过程中是怎么保存的?既然他能打印出来肯定有保存的地方。然后他会不会销毁又是怎么销毁的什么时候销毁的?

这个是一直困惑我的地方。

按理(我理解的)说虽然都循环了但是最终执行的只是一条语句输出。之前的语句输出应该被覆盖掉了。(没有覆盖的话存在哪里?)

补充下:

var sum = 0;
		for(i = 1;i <=10 ;i++){
			document.write(sum);
			sum++;
			
		}
		console.log(sum);

这里connsole.log(sum)显示的是10.于此同时文档中显示0-9,如果文档是流的话在connsole.log(sum)这个节点sum已经变成10了。页面上怎么还有有1-9的呈现?这些值存在在哪里(因为他们应该是sum的值可是sum的值已经变成10了,可是这些值还能在页面上呈现。)他们(1-9)是以什么方式存在的???

正在回答

登陆购买课程后可参与讨论,去登陆

4回答

document.write语句就是输出,执行完直接向页面输出了,不能太理解你说的保存是啥意思了,你是想说,就算输在页面也要有个地方存?程序执行的过程是很快的,如果非要说保存的话,估计就是保存到浏览器了,是使用浏览器来输出,渲染的。

  • 秋得法 提问者 #1
    好吧,谢谢了
    2018-01-05 14:05:06
路大锤 2018-01-05 09:26:44

document.write就是向页面输出呀,执行了程序,直接都输出的页面了,至于你说的保存在哪,就是计算机的内核问题了吧,研究这个没啥意义吧

  • 提问者 秋得法 #1
    不理解怎么掌握?文档流上的内容都不知道怎么呈现的,怎么提高?和变化运用。
    2018-01-05 09:37:56
好帮手慕糖 2018-01-04 18:37:04

你好,以如下代码为例:

for (var i = 1;i <= 100;i++){
  document.write(i+"<br />");
}

第一步执行:var i= 1;

第二步:然后执行判断i<= 100;符合条件,接着执行,不符合,结束循环。

第三步:执行输出语句document.write(i+"<br />");

第四步:然后执行i++;

执行第四步之后,算是完成了一个循环,然后再次从第二步开始执行。

所以:这里是循环一次执行一次输出(document.write数输出语句),第一段代码,循环了100次,输出语句也执行了100次,所以分别输出了1-100的值。

至于第二段代码:

var sum = 0;
for(i = 1;i <=10 ;i++){
   document.write(sum);
   sum++;            
}
console.log(sum);

最初sum=0;执行是从循环,document.write(sum);语句以此输出十句,第一次为0,输出之后,执行了sum++;变为1,第二次执行循环的时候, document.write(sum);输出1,然后sum++; sum变为了2,知道最后一次(第10次),document.write(sum);输出9,然后然后sum++; sum变为了10,循环结束。

那么循环结束之后,console.log(sum);打印的sum的值就是10呀。

祝学习愉快~

  • 提问者 秋得法 #1
    所以:这里是循环一次执行一次输出(document.write数输出语句),第一段代码,循环了100次,输出语句也执行了100次,所以分别输出了1-100的值。 这个我知道,我不明白的地方是,第一次输出到第100次输出的值保存在哪里?1-100总共有100个数然后这写数字是保存在哪里呢?
    2018-01-04 21:48:35
慕九州9452563 2018-01-04 13:34:07
  • 提问者 秋得法 #1
    如果变化的话那么同时只会存在1个值,怎么会把1到100都打印出来?
    2018-01-04 15:29:01
  • 变化一次,打印,再递增,再打印,这对计算机很难吗?
    2018-01-04 15:31:20
  • 提问者 秋得法 回复 慕九州9452563 #3
    我的意思是这个打印的值以什么方式存在。总有保存的地方吧。如果之前保存的位置i已经变化了的话他们也应该变成最后变化的i才是。可问题是不是这样子。
    2018-01-04 15:36:01
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师