详解a++和++a的区别

 更新时间:2017年08月30日 11:26:41   作者:小主良仓  
搞开发已经很久了,一直搞不懂a++和++a到底有所什么不同,后来通过查阅相关资料总结出一点规律,下面小编通过本文给大家介绍

以前我也是老搞不懂a++和++a的区别, 后来看了很多资料, 终于总结出来一条规律, 小白专用!

看完这个例子就懂了:

例1:$a = 8, 求 ++a + a++ - --a + a-- + ++a得多少?

旧值:         8           9           10          9           8
              ++a   +   a++   -   --a   +   a--   +   ++a
新值:         9          10           9           8           9
返回值:      9           9           9           8           9

 结果就等于: 9+9+9+8+9 = 26,

解释: 不管a++还是++a, a都要自身加以, 但是如果是a++,则返回值为旧值,如果是++a, 则返回值为新值.

所以从表达式的结果为26. 

例2:

var a = 3;
var goos = function(){
return a++;
  } 
console.log(goos());

结果肯定为3;

例3:

var a = 3;
var goos = function(){
return ++a;
  } 
console.log(goos());

结果肯定为4;

再次解释: 解释: 不管a++还是++a, a都要自身加以, 但是如果是a++,则返回值为旧值,如果是++a, 则返回值为新值.

总结

以上所述是小编给大家介绍的a++和++a的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

相关文章

  • JS根据key值获取URL中的参数值及把URL的参数转换成json对象

    JS根据key值获取URL中的参数值及把URL的参数转换成json对象

    本篇文章主要围绕js url 参数值展开话题,js根据key值获取url中的参数值,接着把url的参数转换成json,感兴趣的朋友一起来学习吧,本文写的不好地方还望多多指出批评建议
    2015-08-08
  • 详解微信小程序中的页面代码中的模板的封装

    详解微信小程序中的页面代码中的模板的封装

    这篇文章主要介绍了详解微信小程序中的页面代码中的模板的封装的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-10-10
  • 彻底理解JavaScript的原型与原型链

    彻底理解JavaScript的原型与原型链

    原型和原型链是js中的难点也是重点,明白了原型和原型链会让我们在后面不管是学习还是工作都会更加高效,这篇文章主要给大家介绍了关于JavaScript原型与原型链的相关资料,需要的朋友可以参考下
    2021-10-10
  • 关于JS中的箭头函数

    关于JS中的箭头函数

    这篇文章主要介绍了关于JS中的箭头函数,ES6中允许使用=>来定义函数。箭头函数相当于匿名函数,并简化了函数定义,箭头函数在语法上比普通函数简洁多。箭头函数就是采用箭头=>来定义函数,省去关键字function,需要的朋友可以参考下
    2023-05-05
  • Bootstrap超大屏幕的实现代码

    Bootstrap超大屏幕的实现代码

    这篇文章主要为大家详细介绍了Bootstrap超大屏幕的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • 使用百度地图实现地图网格的示例

    使用百度地图实现地图网格的示例

    下面小编就为大家分享一篇使用百度地图实现地图网格的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • JavaScript队列函数和异步执行详解

    JavaScript队列函数和异步执行详解

    这篇文章主要为大家详细介绍了JavaScript队列函数和异步执行的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 关于跨站脚本攻击问题

    关于跨站脚本攻击问题

    这个问题我的理解是只要让其他网站能执行我的脚本我就有可能危害到,这个网站的用户安全
    2011-12-12
  • sass 中使用 /deep/ 修改 elementUI 组件样式报错的解决方案

    sass 中使用 /deep/ 修改 elementUI 组件样式报错

    这篇文章主要介绍了sass 中使用 /deep/ 修改 elementUI 组件样式报错的解决方案,尝试用 ::v-deep 替换 /deep/ ,成功解决了问题,感兴趣的朋友跟随小编一起看看吧
    2024-02-02
  • JS 实现10进制转换36进制的示例代码

    JS 实现10进制转换36进制的示例代码

    这篇文章主要介绍了JS实现10进制转换36进制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04

最新评论