且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

更新时间:2021-08-22 00:55:23

本节书摘来自异步社区《趣学JavaScript——教孩子学编程》一书中的第2章,第2.1节,作者:【美】Nick Morgan(摩根)译者: 李强,更多章节内容可以访问云栖社区“异步社区”公众号查看。

第2章 类型与变量

趣学JavaScript——教孩子学编程
编程其实就是操作数据,可什么是数据呢?数据就是我们保存在计算机程序中的信息。例如,你的名字就是一条数据,年龄也是一条数据。你头发的颜色,有几个兄弟姐妹,住在什么地方,是男生还是女生——所有这些都是数据。

JavaScript中有3种基本的数据类型:数字、字符串和Boolean(布尔类型)。number用来表示数字。例如,年龄可以用一个number表示,身高也可以用number表示。JavaScript中的数字如下所示:《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

字符串用来表示文本。名字在JavaScript中可以用一个字符串来表示,电子邮件地址也可以用字符串表示。字符串看上去如下所示:《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

Boolean是可能为true或false的值。例如,可以用一个Boolean值来表示你是否戴眼镜,也可以用Boolean值表示你是否喜欢吃西兰花。Boolean看上去如下所示:
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

每种数据类型的使用方式不同。例如,可以把两个数字相乘,却不能把两个字符串相乘。对于一个字符串,可以要求获取其前5个字符。对于布尔值,可以判断两个值是否都为真。下面的代码示例展示了这些可能的操作。
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

JavaScript中所有数据都是这些数据类型的某种组合。在本章中,我们将依次学习每种数据类型以及使用每种数据类型的不同方式。

注意
 你可能注意到了,所有这些命令都是以分号结尾。分号表示一条特定JavaScript命令或指令的结束,有点像句子末尾的句号。

2.1 数字和运算符

JavaScript可以执行加、减、乘、除这样的基本数学运算。做这些运算,我们要用到操作符+、-、*和/。

我们可以像使用计算器一样使用JavaScript控制台。我们已经看过3和4相加的示例,再来看一个更难的示例,12345加56789等于几?
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

心算不是很容易,但是JavaScript计算则不需要花费什么时间。

还可以把多个数字加在一起:

《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

JavaScript也可以做减法运算:
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

还可以使用星号做乘法运算:
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

使用斜杠做除法运算:
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

还可以把这些简单的运算组合成一个较为复杂的计算,如下所示:

《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

这里有一个小技巧,因为计算结果取决于JavaScript每次运算的顺序。数学的规则是,乘法和除法总是在加法和减法之前进行,JavaScript也遵循这个规则。

图2-1展示了JavaScript执行的顺序。首先,进行乘法运算,57*3得到171(用红色字体表示)。然后,进行除法运算,31/4得到7.75(用蓝色字体表示)。接下来,进行加法运算,1234+171得到1405(用绿色字体表示)。最后计算减法,1405-7.75得到1397.25,这就是最后的结果。

如果想要在执行乘法和除法之前,执行加法和减法运算,该怎么办呢?例如,你有1个兄弟和3个姐妹,有8个糖果,你想要把糖果平均分给4个兄弟姐妹,该怎么办?(你已经拿了自己的糖果!)你必须用糖果数除以兄弟姐妹的数量。
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

下面是一种尝试:
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

这是不对的。当你只有8个糖果时,你是无法给兄弟姐妹每人11个糖果的。问题就在于,JavaScript在做加法前先做了除法,先计算8除以1(等于8),然后再加上3,得到的是11。要修正这个算式,以便让JavaScript先做加法计算,我们需要使用括号:
《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

这个结果靠谱!兄弟姐妹每人两个糖果。括号强制JavaScript先计算1加3,然后再用8除以4。

试试看

假设你的朋友试图用JavaScript计算要买多少个气球。她要举办一个聚会,想要每个人吹爆2个气球。开始有15个人要来,后来她又邀请了9个人。她试图使用下面的代码来计算:《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

但这似乎不对。

问题在于乘法在加法之前计算。为确保JavaScript先做加法,你需要怎样加括号呢?你的朋友实际上需要买多少个气球呢?