一、标识符
1.标识符
在JS中所有可以由我们自主命名的都可以称为是标识符,例如:变量名、函数名、属性名都属于标识符。
2.标识符的命名规则
1.标识符中可以含有字母、数字、_、$.
2.标识符不能以数字开头
3.表示符不能是ES中的关键字或保留字。
4.标识符一般采用驼峰命名法(首字母小写,每个单词首字母大写,其余字母小写,zzzYyyWww)
3.标识符编码
JS底层保存标识符时实际上是采用的Unicode编码,所以理论上讲,所有的utf-8中含有的内容都可以作为标识符。中文也可以作为变量名,但是千万不要用。
二、字符类型
1.字符类型分类
指字面量的类型,在JS中一共有六种字符类型:
- String 字符串
- Number 数字
- Null 空值
- Boolean 布尔值
- Undefined 未定义
- Object 对象
其中String、Number 、Null 、Boolean 、Undefined 属于基本字符类型,Object 属于引用字符类型。
2.字符串String
- 在JS中,字符串需要用引号引起来,单引号或者双引号对可以,但是不要混着用。
var a="hello";
console.log(a);
- 引号与引号之间不能嵌套,双引号中不能放双引号,单引号中不能放单引号。但是单引号里面可以放双引号,双引号里面可以放单引号。
var a="我说:'今天天气可真冷啊!!!'";
console.log(a);
- 在字符串中可以使用\作为转义字符,当表示特殊符号时可以用\进行转义,单纯表示这是一个符号而已。
‘表示’’ ‘表示’ \n表示换行 ; \t表示制表符,tab空格 \表示\
var a="我说:\"今天天气可真冷啊!!!\"";
console.log(a);
3.数字类型Number
(1)数字与字符串的区别
在JS中,所有的数字都是Number类型的,包括整数和浮点数(小数)。
- 10表示一个数字Number,字面量
- "10"表示一个字符串String:
var a=10;
var a="10";
两者在控制台上面运行结果一样
(2)区分运算结果相同的变量的类型typeof
typeof运算符来检查一个变量的类型。
语法:typeof 变量;
检查字符串时,会返回string
检查数值时,会返回number
//10是数字,字面量
var a=10;
console.log(typeof a);
//10是字符串
var a="10";
console.log(typeof a);
运行结果:
[day01] 19:49:57.338 number at day1-js语法.html:14
[day01] 19:49:57.338 string at day1-js语法.html:17
(3)Number.MAX_VALUE
1.在JS中最大数字是Number.MAX_VALUE
2. 如果表示的数字超过了Number.MAX_VALUE,正数返回Infinity 正无穷 ;负数返回-Infinity 负无穷
3.使用typeof检查Infinity也会返回number类型。
console.log(Number.MAX_VALUE);
1.79769e+308
(4)Number.MIN_VALUE
1.在JS中最小数字是Number.MIN_VALUE
console.log(Number.MIN_VALUE);
"5e-324"返回0以上的最小值
(5)NaN
当把两个字符串相乘的时候,结果会返回一个特殊的数字NaN,表示Not a Number。虽然NaN不是一个数字,但是当使用typeof检查NaN都类型的时候,返回的还是Number类型。
(6)Number运算
- 在js中整数的运算基本可以保证精确。
- 如果使用js进行浮点运算,可能得到一个不精确的结果,所以不要使用js进行高精确度较高的运算,尤其是小数。
4、布尔值Boolean
1.布尔值只有两个,主要用来做逻辑判断的:
true:真 false: 假
2.使用typeof来检查字面量true时,返回的值是Boolean。
var a=true;//不加引号是字面量布尔值,加了引号就是字符串了。
console.log(typeof a);
返回值为"boolean"
5、空值Null
1.控制null只有一个值,就是null,专门用来表示一个为空的对象。
2.使用typeof去检查null的时候,返回的类型是object
6、未定义Undefined
1.undefined类型的值只有一个,就是undefined,当我们声明一个变量,但是不给这个变量赋值,那么这个变量的值就是undefined。
2.使用typeof去检查该变量的时候,那么该变量的返回值类型就是undefined。