一. 表达式

学习运算符之前, 先学习下什么叫表达式.

表达式是用于JavaScript脚本运行时进行计算的式子

可以包含常量、变量、运算符

表达式可以任意复杂。

表达式的值就是经过一系列运算之后的最终值。

var n = 10;
var m = 30;
alert(n + m);  // n+m就是一个表达式。

二. 算术运算符

+, - , *, /


2.1 +运算符

这个运算符有 2 个含义:

  1. 数学上的加法

    • 当两边都不是字符串的时候, 就是普通的数学加法. 如果有不是数字的则使用前面说的类型转换隐式的转化为数字.

    • 如果有一个是NaN, 结果就是NaN.

    • 有一个特殊的地方: 隐式转的时候会把null -> 0 切记.

    console.log(1 + 2);  // 数学的加法
    console.log(true + 1); // 2 把true转换为数字之后再加
    console.log(undefined + 100); // NaN  因为: undefined -> NaN
    console.log(null + 100);  // 100 因为: null->0  
    console.log(NaN + 1); // NaN
    

  2. 字符串连接

    • 两边至少一个是字符串的时候, 这个时候就是字符串连接.
    console.log(1 + "2");  // 12  字符串连接, 因为有一个是字符串
    console.log(true + "2"); // true2 字符串连接, 因为有一个是字符串
    console.log(undefined + "100"); // undefined100 字符串连接
    console.log(null + "100"); // null100
    console.log(NaN + "1");// NaN1
    


2.2 -, *, /运算符

这个三个运算符就是数学上的算法.

会把两边都隐式转换成数字再进行计算.

如果有一个是NaN, 则结果就是NaN.


2.3 %运算符

这个运算符也叫取模, 或者取余运算符.

数学上的含义就是计算两个数相除之后的余数.

一般只用于两个整数进行取余.(浮点数也可以, 但是一般没啥实际用处)

console.log(100 % 2);  // 0
console.log(91 % 2); // 1

Copyright © 李振超 2018 all right reserved,powered by Gitbook
该文件最后修订时间: 2018-10-18 03:19:29

results matching ""

    No results matching ""