请在PC端查看,手机端不适宜阅读编程书籍。本文涉及的所有案例,请务必亲自动手实践,这将有助于加深记忆。因为在看别人解决问题时,我们常常误以为自己也能轻松应对,但实际上上场后才发现自己的能力远不如对方。所以,请放弃【看懂=学会】的幻想。

下面我们来讨论如何处理JavaScript中的字符串内容。变量用于存储字符串,通常我们称之为字符串变量。字符串需要用双引号括起来,即`" "`。需要注意的是,在JavaScript中,单引号和双引号并不区分,但建议使用双引号。

假设我们有三个变量:`var str1 = 'hello';`,`var str2 = 'world';`和`var str3 = '!';`,我们想要将这三个变量组合成一个句子。这就是编程中最常见的字符串拼接问题。解决方法非常简单,只需使用加号(+)即可。

运行结果如下:

```javascript

在这段代码中,加号(+)并不是加法运算,而是表示字符串拼接的意思。拼接完成后,会得到一个新的字符串。那么问题来了:什么时候表示加法运算,什么时候又表示字符串拼接呢?其实不难理解,对于字符串内容来说,它不可能做数学加法运算。因此,只要有字符串参与的『加法』运算,都会变成拼接。

```

这段代码的拼接结果并不完美,我们可以对其进行修饰:

```javascript

let str1 = 'hello';

let str2 = 'world';

let str3 = '!';

let result = str1 + ' ' + str2 + ' ' + str3; // 结果为:hello world !

```

任何类型的变量,与字符串进行『加法』运算都会变成拼接。布尔类型也不例外。运行结果如下:

```javascript

你会发现一个规律:不管什么类型的变量与字符串进行拼接时,它们都会变成字符串。截至目前,根据存储数据的不同,我们将变量分为三种类型:数字类型、布尔类型和字符串类型。一般的教程上都会讲到JavaScript有7种数据类型,但实际上还少了4种。对,另外4种暂时先不讲,因为讲了你也听不懂。后面我们再慢慢认识它们。有一个更重要的问题需要先跟你解释清楚:JavaScript变量在创建时需要在内存中占用一定空间。然而内存有限,这个空间不可能无限大。因此,在分配空间时,通常有一些行业规范。比如,数字类型在JavaScript中通常为4个字节大小;布尔类型通常为1个字节大小;字符串类型的空间大小一般由字符的个数决定。如果你对字节大小没有概念,请参考下一节《存储单位》。为什么计算机一定要区分数据类型呢?这就要回到我们开头的例子了:对于表达式`3 + '3'`,结果是6还是3?

"33"

呢?根据我们上面总结的规律,你当然知道结果是:"33"。但计算机可不知道啊,它必须先给两个数据强行做分类:一个是number(数字)类型,一个是string(字符串)类型。这个时候,计算机才知道应该使用拼接而不是加法运算。提前识别变量的数据类型对于计算机处理数据是非常有必要的。不仅如此,JS中还提供了一种人为检查变量类型的工具——typeof。它是系统内置的一个关键字,作用是获取变量的类型。本小节完。

reign title发音:/reɪn ˈtaɪtl/

wisdom发音:/ˈwɪzdəm/

最近看书偶然翻到乾隆资料,发现乾隆帝的谥号全称叫法天隆运至诚先觉体元立极敷文奋武钦明孝慈神圣纯皇帝。哈哈哈,绝不绝?他爹雍正的谥号叫做敬天昌运建中表正文武英明宽仁信毅睿圣大孝至诚宪皇帝。清朝所有皇帝的谥号都一个比一个长,争奇斗艳!汉朝那会谥号还是比较简洁的,什么惠帝、文帝、景帝、武帝。谥号从哪开始指数增长了呢?好像是李世民,他的谥号叫做文武大圣大广孝皇帝。打这开始一发不可收拾。到了宋太祖赵匡胤:启运立极英武睿文神德圣功至明大孝皇帝。到了明朝朱元璋:开天行道肇纪立极大圣至神仁文义武俊德成功高皇帝。到了清朝,已经长到念不出来了。历史有很多的脉络,可以从各种不同的角度去观察和理解,还是挺有趣的。

谥号:用于死后评价此人的一生。庙号:后人祭拜此人时,庙里牌位上写的名字,例如高祖、太祖、太宗、高宗等。年号:用于记录时间的,例如贞观元年、万历六年、乾隆十三年等。欢迎各位小伙伴在评论区热烈、激烈以及猛烈地讨论,直至大打出手。欢迎各位喜欢我的看官打赏,10块8块不多,1块2块不少。想狠狠支持我一把的,也可以买本书来打发厕所时光,不胜感激~~