字面量
字面量就是一个一个的值,像1、2、'hello'、true、NaN ...
所有的字面量在JS中都可以直接使用,但是一般不会这么做
变量
- 变量用来存储值,一个变量可以用来“存储”任意值
- 并且变量中“存储”的值可以任意修改
- JS中的变量并没有直接存储值,而是存储值的内存地址
- JS中的变量更像是一个值的别名
变量的使用
声明变量:
- let 变量名;
- var 变量名;(老版本)
- 为变量赋值
- 变量名 = 值;
- 声明和赋值同时进行
- let 变量名 = 值;
- var 变量名 = 值;
- 声明常量
- const 常量名 = 值;
- 常量只能进行一次赋值
标识符
- 在js中所有可以自主命名的内容都可以认为是标识符 像:变量名、函数名、类名、(属性名)
- 规范:
- 1.标识符中可以含有字母、数字、_、$,但是不能以数字开头
- 2.标识符不能是js中的关键字和保留字,也不建议使用js中的函数、变量名作为标识符
- 3.标识符采用驼峰命名法
- 小驼峰
- 首字母小写,每个单词开头大写,其余小写
- xxxyyyzzz --> xxxYyyZzz
- 大驼峰(类名)
-
首字母大写写,每个单词开头大写,其余小写
-
xxxyyyzzz --> XxxYyyZzz
-
- 小驼峰
数据类型
基本数据类型(不可变类型)
-
string(字符串)
-
JS中的字符串使用引号引起来,单双都行,但是不要混合
-
同类型的引号不要发生嵌套
-
转义字符串,js中使用 \ 作为转义字符 ' --> ' " --> " \t --> 制表符 \n --> 换行 \ --> \
-
模板字符串(新增的)
-
使用 `(反单引号)来表示模板字符串
-
模板字符串可以跨行使用,并且在模板中可以直接嵌入变量
- 例子:
- let str =
xxxx ${变量}
; - 使用 typeof 检查一个字符串时,它会返回 'string'
-
number(数值)
- 在js中所有的整数和浮点数(小数)都是number类型
- 特殊的数字:
- Infinity (无穷)
- NaN (非法数字)
- 其他进制的数字
- 二进制:0b开头
- 八进制:0o开头
- 十六进制:0x开头
-
在js中可以确保大部分的整数运算取得一个精确的结果(别太大),小数运算可能会得到一个近似值,所以不要直接在js中进行精度要求高的运算
- 使用typeof检查数字时,会返回 'number'
- 大整数(bigint)
- ES2020中新推出的数值类型,大整数需要以n结尾。
- 使用typeof检查大整数时,会返回 'bigint'
-
-
boolean(布尔值)
- 布尔值用来进行逻辑判断,布尔值只有两个: true 表示真 false 表示假 - 使用typeof检查boolean时会返回 'boolean'
-
null(空值)
- 空值用来表示一个空的对象,只有一个值 null
- 使用typeof检查空值时,返回'object'
-
undefined(未定义)
-
未定义用来表示声明但没有赋值的变量,只有一个值 undefined
-
使用typeof检查未定义时,会返回 'undefined'
-
一般我们不会主动使用undefined
-