Brief Syntax Introduction
JS
是解释型语言。
解释型语言 与 编译型语言:
解释型:一行一行看,容易出错但方便,可以及时方便地找到出错位置以及出错原因,容易跨平台(可以嵌入到其他软件)。
编译型:把高级语言预先翻译成机器语言,并把结果保存下来,速度快(编译器优化),不易出错,但不能跨平台(e.g. .exe can't be run in MacOS)。
-
行末分号非必需:
JS
中的每一行都可以选择使用分号终止,即编译器会自动补全没有用分号的地方。 -
JS
中的变量是 弱类型 的,即变量的类型只有在被赋值的时候才得到确认。
数据类型与变量
-
const
用来声明常量(一旦声明后续值不可更改),let
用来声明变量(一个变量只能声明一次,值以及值的类型可以被多次更改)。 -
JS
中的基本类型有数字、字符串、布尔值、符号、null
和undefined
。 -
JS
中遇到计算除法时除数为0
的情况时,不会报错,会根据被除数的值来返回对应的结果。若被除数是正数,则返回Infinity
;若被除数是负数,则返回-Infinity
;若被除数是0
,则返回NaN
(Not a Number)。
除以0
的余数(1 % 0
)为NaN
。 -
与
python
类似,JS
中一个*
代表相乘,**
则代表幂运算。 -
JS
中===
表示检查是否相等,!==
表示检查是否不等。
字符串
-
JS
中的字符串用''
或""
括起来表示。若想表达的字符串中本身含有'
或"
,则需要用到转义字符。
e.g.I'm "OK"!
的表示是:'I\'m \"OK\"!';
-
在
JS
中输出多行字符串的方式是用反引号。
e.g.`No \n anymore `;
-
与
python
类似,要把多个字符串连接起来,可以用+
号连接。也可以通过模版字符串的方式来方便输出过程。let name = '小明'; let age = 20; let message1 = '你好, ' + name + ', 你今年' + age + '岁了!'; let message2 = `你好, ${name}, 你今年${age}岁了!` //message1 = message2
-
JS
中的字符串是不可变的,即不能通过s[id] = 'A'
的方式来将s
中id
位置的字母改成A
。 -
JS
中有很多类似python
和C++ STL
中的字符串函数,如toUpperCase
,indexOf
,substring
等。