JavaScript加法运算

数值 + 数值

        console.log(88 + NaN);              // NaN
        //正无穷大+负无穷大不知道往那边计算,返回NaN
        console.log(Infinity + -Infinity);  // NaN
        console.log(Infinity + Infinity);   // Infinity
        console.log(-Infinity + -Infinity); // -Infinity
        console.log(+0 + +0);               // +0
        console.log(-0 + -0);               // -0
        console.log(+0 + -0);               // +0

字符串+字符串

        console.log('hello ' + 'world');   // 'hello world'

字符串+数值

        console.log(10 + '10.10');         // '1010.10'
        console.log('1' + 2 + 3 + 4);      // '1234'
        console.log(1 + 2 + 3 + '4');      // '64'
        console.log(1 + (2 + '3') + 4);    // '1234'

字符串+?(其他)


        console.log("1" + NaN);            // 1NaN
        console.log("1" + true);           // 1true
        console.log("1" + false);          // 1false
        console.log("1" + undefined);      // 1undefined
        console.log("1" + null);           // 1null
        console.log("1" + Infinity);       // 1Infinity
        console.log("1" + -Infinity);      // 1-Infinity

        // 数组+运算会调用toString方法,返回''
        console.log('1' + []);                      // 1
        console.log('1' + [123]);                   // 1123
        console.log('1' + [,,,]);                   // 1,,
        console.log('1' + [123,456,789,'aaa']);     // 1123,456,789,aaa

        console.log('1' + function a() {});         // 1function a() {}
        console.log('1' + {});                      // 1[object Object]
        console.log('1' + {a: 1});                  // 1[object Object]

        // 数值 + ?
        console.log(1 + []);              // 1
        console.log(1 + [1,2,3]);         // 11,2,3
        console.log(1 + [123]);           // 1123
        console.log(1 + [123,456,789]);   // 1123,456,789
        console.log(1 + [,2,,]);          // 1,2.

        console.log(function a() {} + [12,12]);     // function a(){}1212
        console.log([] + function a() {});          // function a() {}
        console.log({} + [12,34]);                  // [object Object]12,34
        console.log({a : 1} + [12,12]);             // [object Object]12,12

数组,函数和对象

        console.log([1] + [2]);                  // 12
        console.log([] + [1,2,3]);               // 1,2,3
        console.log(({}) + ({}));                // [object Object][object Object]
        console.log(({}) + ({a:1}));             // [object Object][object Object]
        console.log((function a() {}) + (function b() {}));     
        // function a() {}function b(){}
        console.log({} + []);                    // [object Object]
        console.log([] + {});                    // [object Object]
        console.log((function a() {}) + {});                    
        // function a(){}[object Object]
        console.log([1,2] + (function b() {}));  // 1,2function b() {}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值