JavaScript-算数运算符的注意点

加法运算的注意点

  • 任何非数值类型的数据在参与加法运算之前, 都会被自动的转换成数值类型之后, 再参与运算
  • 任何数据和 NaN 进行运算, 结果都是 NaN
  • 任何数据和字符串相加, 都会被先转换成字符串之后再运算
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Demo</title>
    <script>
        let res1 = 1 + true;
        let res2 = 1 + 1;
        let res3 = 1 + null;
        let res4 = 1 + 0;
        let res5 = 1 + NaN;

        // let res = "1" + "123";字符串相加的本质就是字符串拼接 "1123"
        let res6 = 1 + "123";

        console.log(res1);
        console.log(res2);
        console.log(res3);
        console.log(res4);
        console.log(res5);
        console.log(res6);
    </script>
</head>
<body>
</body>
</html>

减法运算的注意点

  • 任何非数值类型的数据在参与减法运算之前, 都会被自动的转换成数值类型之后, 再参与运算
  • 任何数据和 NaN 进行运算, 结果都是 NaN
  • 任何数据和字符串相减, 都会先把字符串转换成数值类型之后再运算
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Demo</title>
    <script>
        let res1 = 1 - true;
        let res2 = 1 - 1;
        let res3 = 1 - NaN;

        // let res = 1 - 123; -122
        let res4 = 1 - "123";
        console.log(res1);
        console.log(res2);
        console.log(res3);
        console.log(res4);
    </script>
</head>
<body>
</body>
</html>

乘法和除法运算的注意点

和减法运算的注意点一模一样

取模(取余)运算的注意点

格式:m % n = 余数

  • 如果 m > n 的, 那么就正常取余
  • 如果 m < n 的, 那么结果就是 m
  • 如果 n 是 0, 那么结果就是 NaN
  • 取余运算结果的正负性, 取决于 m 而不是 n
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Demo</title>
    <script>
        let res1 = 10 % 3;
        let res2 = 3 % 10;
        let res3 = 3 % 0;

        // 1
        let res4 = 10 % -3;

        // -1
        let res5 = -10 % 3;
        console.log(res1);
        console.log(res2);
        console.log(res3);
        console.log(res4);
        console.log(res5);
    </script>
</head>
<body>
</body>
</html>

posted @ 2021-03-31 10:47  BNTang  阅读(71)  评论(0编辑  收藏  举报