关闭页面特效

++a和a++的区别。

先来看2段js代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var a=0;
var b=0;
 
while(a<10)
 
{
 
document.write(a++);
 
}
 
document .write("<br>");
 
while(b<10)
 
{
 
document.write(++b);
 
}

  

结果是0~9和~1~10

这证明了2个问题:

第一:循环的次数是相等的

第二:如果是a++的话,每一次进行一个自加的话,都是不会返回当次自加的结果,而是上次循环得到的结果(老的)

如果是++a的话,每次循环,返回最新的结果,也就是+1以后的结果。

 

我们再来看看下面的代码:

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

  

里面的2段代码的结果都是一样的都是0~9

为什么这里一样了呢?因为刚才说过,i++或者++i是作为返回值然后显示出来,

而这里的i++和++i是作为执行次数来操作的,并没有返回值,而他们的执行次数是一样的

 

再来做一个变体

 

1
for(var i=0;i<10;i++){document.write(++i)}  //1,3,5,7,9
1
for(var i=0;i<10;i++){document.write(i++)}  //0,2,4,6,8

  

显示结果分别又是是什么呢?

首先我们可以确定的是:for循环里面的i++是不会有返回值的,但是会+1,

而后面的++i是会有返回值的,所以结果就是上面注释的结果了。

 

 

 


__EOF__

作  者ღKawaii
出  处https://www.cnblogs.com/kmsfan/p/3617597.html
关于博主:一个普通的小码农,为了梦想奋斗
版权声明:署名 - 非商业性使用 - 禁止演绎,协议普通文本 | 协议法律文本
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!

posted @   yangliwen  阅读(1167)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
0
0
关注
跳至底部
document.getElementById("homeTopTitle").innerText="ღKawaii";
点击右上角即可分享
微信分享提示