JavaScript复习——JS教程-基本语法
1.语句
语句和表达式的区别在于,前者主要为了进行某种操作,一般情况下不需要返回值;后者则是为了得到返回值,一定会返回一个值。凡是 JavaScript 语言中预期为值的地方,都可以使用表达式。比如,赋值语句的等号右边,预期是一个值,因此可以放置各种表达式。
2.变量
2.1 概念
- 只是声明变量而没有赋值,则该变量的值是undefined
- JavaScript是一种动态类型语言,也就是说,变量的类型没有限制,变量可以随时更改类型。
- 变量x声明了两次,第二次声明是无效的。但是,如果第二次声明的时候还进行了赋值,则会覆盖掉前面的值。
2.2 变量提升
JavaScript 引擎的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行。这造成的结果,就是所有的变量的声明语句,都会被提升到代码的头部,这就叫做变量提升(hoisting)。
3.标识符
标识符命名规则如下。
- 第一个字符,可以是任意 Unicode字母(包括英文字母和其他语言的字母),以及美元符号($)和下划线(_)。
- 第二个字符及后面的字符,除了 Unicode字母、美元符号和下划线,还可以用数字0-9 中文是合法的标识符,可以用作变量名。
*保留字(arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield)
4.注释
一种是单行注释,用//起头;另一种是多行注释,放在/和/之间。由于历史上 JavaScript 可以兼容 HTML 代码的注释,所以也被视为合法的单行注释。
5.区块
avaScript 使用大括号,将多个相关的语句组合在一起,称为“区块”(block)。对于var命令来说,JavaScript 的区块不构成单独的作用域(scope)。
6.条件语句
6.2 if…else结构
else代码块总是与离自己最近的那个if语句配对。
6.3 switch语句
switch语句内部采用的是“严格相等运算符”
7.循环
7.4 break 语句和 continue 语句
如果存在多重循环,不带参数的break语句和continue语句都只针对最内层循环