如果需要反复给数字变量加1或是减1,可以使用递增(++)和递减(--)运算符来完成。

在JavaScript中,递增(++)和递减(--)既可以放在变量前面,也可以放在变量后面。

放在变量前面时称为前置递增(递减)运算符,放在变量后面是,可以称为后置递增(递减)运算符。

一、自增++

通过自增运算符可以使变量在自身的基础上加1;

对于一个变量自增以后,原变量的值会立即自增1;

自增符号:++

自增分为两种:1、后置自增(a++);2、前置自增(++a);

(一)、前置递增运算符

++num前置递增运算符,类似于 num = num+1,

先自加,后返回值

var num = 10;
console.log(++num); //++num 先自加
console.log(num); //返回值

(二)、后置递增运算符

num++后置递增,就是自加1,类似于 num+1,但是 num++ 写起来更简单。

先返回原值,后再自加1

var num = 10;
console.log(num++); //num++ 先返回原值 10
console.log(num); //num++ 先返回原值再加1,num为11

a++的值等于原变量的值(自增前的值)

++a的值等于原变量自增后的新值。

 实例:

a++是在原值的基础上自增(a=20,a++=20);

++a是在一次自增过后的基础上再自增(a=21,++a=22);

a相当于自增了两次(a=20+1+1=22);

所以 a++ + ++a + a=20+22+22=64

 实例2

var a = 10;
++a;//++a 为11,a为11
var b = ++a + 2;//++a 为12
console.log(b)

实例3

var c=10;
c++; //c++为11,c为11
var d = c++ + 2;//c++ 为11,c为12
console.log(d);

 实例4

var e = 10;
var f = e++ + ++e;//e++为10,e为11,所以++e为12
console.log(f);

二、自减- -

通过自减可以使变量在自身的基础上减一;

自减符号--

自减分为两种:1、后- -(a--);2、前- -(--a);

相同点:a-- 和 --a 都会立即使原变量的值自减一;

不同点:a-- 和 --a的值不同。

a- -是变量的原值(是自减前的值);

--a是原变量的新值(自减后的值);

前置递增(减)和后置递增(减)总结

  前置递增(减)和后置递增(减)运算符可以简化代码的编写,让变量的值+1/-1比以前更加简单

  单独使用是,运算结果相同

  与其他代码联用时,执行结果会不同

  后置:先原值运算,后自加自减(先人后己)

  前置:先自加,后运算(先己后人)

  开发时,大多使用后置递减/增,并且代码独占一行。

 实例:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JS</title>
</head>
<body>
<script>
var a=10,b=20;
var c=a++;
console.log("a="+a);
console.log("c="+c);
c=++a;
console.log("a="+a);
console.log("c="+c);
c=b--;
console.log("c="+c);
console.log("b="+b);
c=--b;
console.log("c="+c);
console.log("b="+b);
</script>
</body>
</html>

JavaScript自增和自减的更多相关文章

  1. JavaScript自增、自减

    JavaScript自增.自减运算符与表达式语法 var i++; var-- 声明变量 i-- 变量名 ++ -- 自增运算符 JavaScript自增.自减运算符与表达式 JavaScript自增 ...

  2. Javascript自增、自减运算符

    JavaScript自增.自减运算符与表达式语法 var i++; var-- 声明变量 i-- 变量名 ++ -- 自增运算符 JavaScript自增.自减运算符与表达式 JavaScript自增 ...

  3. javascript中的自增与自减

    一直都对自增与自减的执行顺序有点糊涂,今天查了资料,来总结一下 a++(a--),就是指当时计算a,当下一次使用这个变量的时候才执行++或者-- ++a(--a),就是指当时就计算++或者-- 例1: ...

  4. JavaScript基础之变量的自增与自减

    一.自增(++) ⑴什么是自增? 通过自增运算符可以使变量在自身的基础上加一: 对于一个变量自增以后,原变量的值会立即自增一: 示例: <!DOCTYPE html> <html l ...

  5. js实现购物车数量的增加与减少,js实现购物车数量的自增与自减

    js实现购物车数量的增加与减少,js实现购物车数量的自增与自减 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E ...

  6. 自增或自减例子:i++和++i的相同点和不同点

    /* Name:++i和i++的区别 Copyright: By.不懂网络 Author: Yangbin Date:2014年2月15日 02:40:27 Description:熟悉前自增或自减的 ...

  7. C++自增和自减运算符(--和++)

    在C和C++中,常在表达式中使用自增(++)和自减(--)运算符,他们的作用是使变量的值增1或减1,如:++i(在使用i之前,先使i的值加1,如果i的原值为3,则执行j=++i后,j的值为4)--i ...

  8. C语言之自增和自减运算符

    一 自增和自减 自增(++):就是给自己的值再加1 自减(--):就是给自己的值减1 tips: ++(--)可以放在前面,也可以放在后面,效果都是一样,都是会给自身+1(-1) 前缀++(--):会 ...

  9. Java基础知识(一) 自增、自减运算符

    .d1 { border-style: none } .d2 { border-style: solid } .d3 { border-style: dotted } .d4 { border-sty ...

随机推荐

  1. JSON.toJSONString时保留null值

    QuoteFieldNames———-输出key时是否使用双引号,默认为true WriteMapNullValue——–是否输出值为null的字段,默认为false WriteNullNumberA ...

  2. [DS+Algo] 010 二叉树的遍历

    二叉树遍历 深度优先 一般用递归 一些名词 遍历方式 英文 先序 Preorder 中序 Inorder 后序 Postorder 广度优先 一般用队列 Python 代码示例 class Node( ...

  3. [知乎]ARM 到底是什么

    [小宅按]近期公司推出来基于ARM芯片的服务器,本文就一些基本概念,比如ARM, ARM64, ARMv8, ARM7,ARMv7, 64位等让人费解的概念进行了粗浅地分析,涉及的关键字已用粗体标出. ...

  4. 数组转字符串 java8

    public static String arrayToString(int[] arr) { // 1,2,3... StringBuffer sb = new StringBuffer(); fo ...

  5. iview报错[Vue warn]: Error in render: "TypeError: ctx.injections.tableRoot.$scopedSlots[ctx.props.column.slot] is not a function"

    原因是我使用了iview的<Table>组件,我给Table组件的columns中定义了4个含有slot的列,但是实际在<Table>中只使用了其中3个,导致的报错. 也就是说 ...

  6. adb常用命令和抓取log的方法

    一 adb常用的几个命令1. 查看设备adb devices这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示 C:\Documents and Settings\ ...

  7. 小白学Python——用 百度AI 实现 OCR 文字识别

    百度AI功能还是很强大的,百度AI开放平台真的是测试接口的天堂,免费接口很多,当然有量的限制,但个人使用是完全够用的,什么人脸识别.MQTT服务器.语音识别等等,应有尽有. 看看OCR识别免费的量 快 ...

  8. Node+Express+MySql实现简单增删改查和登录

    var express = require('express'); var mysql = require('mysql'); var app = express(); var bodyParser ...

  9. 剑指offer-复杂链表的复制-链表-python

    题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head.(注意,输出结果中请不要返回参数中的节点引用,否 ...

  10. UDP即时小通信

    package 第十二章; import java.io.IOException; import java.net.*; public class UDPServer { /*** * * @para ...