以下是我在学习JavaScript的一些学习笔记:
语句和表达式
语句和表达式的区别在于,前者主要为了进行某种操作,一般情况下不需要返回值;后者则是为了得到返回值,一定会返回一个值。
语句以分号结尾,一个分号就表示一个语句结束。多个语句可以写在一行内。
表达式不需要分号结尾。一旦在表达式后面添加分号,则 JavaScript 引擎就将表达式视为语句,这样会产生一些没有任何意义的语句。
1 + 3;
'abc';
变量
- 变量是对“值”的具名引用。变量就是为“值”起名,然后引用这个名字,就等同于引用这个值。变量的名字就是变量名。
- 创建变量时不写var的话,不利于表达意图,容易不知不觉中创建全局变量
- JavaScript 的变量名区分大小写,A和a是两个不同的变量。
- 变量的类型没有限制,变量可以随时更改类型。
- 使用var重新声明一个已经存在的变量,是无效的。如果重新赋值,就会覆盖掉原本的值 - 变量提升 :JavaScript在解析代码时,会先获取所有被声明的对象,也就是所有声明的语句被提升到最顶部,然后才一句一句的执行代码,这也是二次声明无效的原因
标识符
- 标识符(identifier)指的是用来识别各种值的合法名称。最常见的标识符就是变量名以及函数名。JavaScript 语言的标识符对大小写敏感,所以a和A是两个不同的标识符。
- 标识符的命名规则
- 标识符可以以任意Unicode字母(包括英文字母和其他语言的字母), 以及美元符($) 和下划线(_)开头
- 第二个字符及后面的字符,除了 Unicode 字母、美元符号和下划线,还可以用数字0-9
- 标识符不能包含星号、加号、减号或连词线等符号
- 中文是合法的标识符,可以用作变量名
- JavaScript 的保留字,不能用作标识符: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
注释
- 单行注释,以 //开头
- 多行注释,/* 注释内容 */
- 由于历史上 JavaScript 可以兼容 HTML 代码的注释,所以 < !--和-->也被视为合法的单行注释
-->只有在行首,才会被当成单行注释,否则会当作正常的运算
网友评论