为什么这里a打印出来是22啊

为什么这里a打印出来是22啊

为什么这里a打印出来是22啊,我的思路见注释


<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>运算符</title>

    <script>

        var num = 10;

        var a = ++num + num++; //a=11+ 11=22

        a = a++;//a=22+1=23

        console.log(num);//12

        console.log(a);

    </script>

</head>

<body>

    

</body>

</html>

过选择【代码语言】突出显示


正在回答 回答被采纳积分+1

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

2回答
好帮手慕言 2020-11-19 17:13:56

同学你好,同学第一次粘贴的代码,打印a的值为22,是正确的,可以结合第一次回复再理解一下,祝学习愉快~

好帮手慕言 2020-11-19 11:14:10

同学你好,a =a++,是把a++的返回的值赋值给a,a++的返回的值是22(因为是后自增,先返回的是原值,也就是22),所以a=22,如果是下方两种写法,a的值就是23,如下:

http://img1.sycdn.imooc.com//climg/5fb5e2b809e9e2e603160170.jpg

http://img1.sycdn.imooc.com//climg/5fb5e2ce09b25ad703170194.jpg

控制台:

http://img1.sycdn.imooc.com//climg/5fb5da3809d6b61702330164.jpg

关于这部分知识,课程中会有讲解,链接:https://class.imooc.com/lesson/768#mid=19206

祝学习愉快~

  • 提问者 樱桃小团子 #1
    我计算的结果也是23,但是我用谷歌打印出来的是22
    2020-11-19 16:37:03
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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