以下内容为学习记录,可以参考 MDN 原文。
环境
- vscode 1.46
- Microsoft Edge 83
数字类型
JavaScript 只有一个数据类型 Number,包括整数和浮点数。
数字示例
let myInt = 5;
let myFloat = 6.667;
console.log(typeof myInt);
console.log(typeof myFloat);
将这个放到网页中执行,将会看到输出了两个 number,表示整数和浮点数都是数字类型。
typeof 可以查看变量的类型。
算术运算符
加法(+)、减法(-)、乘法(*)除法(/),其中乘法除法的符号和数学中有一点不一样。
求余运算(%),有时候也就取模。
幂运算(**),不过它在 EcmaScript 2016 中首次引入,老版本可以使用 Math.pow 代替。
运算符优先级
运算符的优先级和数学中一致,如果不明确,可以加括号。
let num = (8 + 18) / (8 + 2);
递增和递减
有时候,您需要反复添加或从数字变量值中减去一个。
这可以方便地使用递增(++)和递减(--)运算符来完成。
let num1 = 4;
num1++;
赋值
等号就是赋值运算符,它只是将右边的值赋给左边的变量。
不过也有一些额外的赋值运算符:
加等(+=):右边的数值加上左边的变量,然后再返回新的变量。
减等(-=):左边的变量减去右边的数值,然后再返回新的变量。
乘等(*=):左边的变量乘以右边的数值,然后再返回新的变量。
除等(/=):左边的变量除以右边的数值,然后再返回新的变量。
let x = 3;
x += 3;
x -= 3;
x *= 3;
x /= 3;
比较
大于(>
)、等于(==
)、小于(<
)、大于等于(>=
)、小于等于(=<
)、不等于(!=
)、严格等于(===
)、严格不等于(!==
)。
您可能会看到有些人在他们的代码中使用==和!=来判断相等和不相等,这些都是JavaScript中的有效运算符,
但它们与 ===
/!==
不同,前者测试值是否相同, 但是数据类型可能不同,而后者的严格版本测试值和数据类型是否相同。
建议使用严格版本的等于和不等于。