HTML Dog
跳至导航

做数学

变量可以用来存储字符串和数字(以及其他东西),但这里主要关注数字。

有多少水果?

在你的控制台中,让我们创建两个变量。一个将是我们拥有的苹果数量,另一个将是我们拥有的梨的数量。


var apples = 5, pears = 10;

这创建了两个变量……但只有一个 var 关键字?是的,这是一种同时声明和初始化多个变量的简写方法。通过只使用一次 var 关键字并将新变量用逗号分隔,可以节省一些工作。

现在,使用这两个变量来计算总共有多少件水果。


var piecesOfFruit = apples + pears;

这倒是新鲜事。

你要求浏览器在将结果分配给 piecesOfFruit 之前先计算右侧的总和——你不是在相加变量名,而是在相加变量的值。浏览器知道,当它看到这样的变量时,你想对它的值做些什么。所以它会在执行加法之前去获取每个变量的值。

总和被称为 piecesOfFruit,而不是 pieces of fruit。这是因为变量名不能包含空格!有一套关于你可以使用什么和不能使用什么的规则,但目前只使用不带空格的字母。

分配水果

假设你想把水果分给 3 个人。每个人能分到多少水果?


var piecesForEachPerson = piecesOfFruit / 3;

谢天谢地我们有这个 JavaScript,否则你得用计算器来算这道题了……

你使用斜杠(“/”)来表示除法:用左边的数除以右边的数。

优先级与运算符

对于计算,你可以使用各种符号:加法(“+”)、减法(“-”)、除法(“/”)和乘法(“*”)。

数学符号称为运算符;也就是说,它们操作一些数据。稍后我们会遇到更多运算符,但你应该知道,就像在计算器上一样,符号是按照特定的顺序计算的,称为运算符优先级。括号里的内容——也就是这些:“(”和“)”——会先被计算,然后是乘法和除法,最后是加法和减法。

这是一个例子,逐步展示浏览器如何运行它


(10 + 2) / 2 + 4 * 2

括号里的部分先被计算。所以这就变成了……


12 / 2 + 4 * 2

……计算结果为……


6 + 4 * 2

然后按照运算符优先级顺序进行计算。如果多个计算具有相同的优先级,则从左到右进行计算。

乘法具有更高的优先级,所以先计算,计算结果为……


6 + 8

这用于计算最终值


14

呼!