-
字面量,都是一些不可改变的值
-
比如:1,2,3,4
-
字面量可以直接使用,但是一般不会直接使用字面量
-
-
变量,可以用来保存字面量,而且变量的值是可以任意改变的
-
变量方便使用
-
声明变量,在js中使用var关键字来声明一个变量
var b=789;
-
-
标识符
-
在JS中所有的可以由我们自主命名的都可以成为标识符
-
例如:变量名、函数名、属性名都属于标识符
-
命名一个标识符时需要遵守如下规则:
-
标识符中可以含有字母、数字、"_"、"$"
-
标识符不能以数字开头
-
标识符不能是ES中的关键字或者保留字
-
标识符一般都采用驼峰命名法
-
如:helloWorld 、 xxYyZzz
-
-
JS底层保存标识符时实际上是采用的Unicode编码
-
数据类型(字面量的类型)
-
js中共六种数据类型:
-
String 字符串
-
使用双引号或者单引号引起来,但是不要混合使用
-
引号嵌套时要混用
-
在字符串中可以使用作为转义字符
-
-
Number 数值
-
在JS中所有的数值都是Number类型,包括证书和浮点数
-
JS中表示的数字最大值 1.7976931348623157e+30
-
如果是用Number表示的数字超过了最大值,则会返回一个Infinity,表示正无穷
-
正无穷 Infinity 都是Number类型
-
负无穷 -Infinity 都是Number类型
console.log(Number.MAX_VALUE)
-
-
NaN 是一个特殊数字,表示not a number , NaN也是一个数字类型
console.log(Number.MIN_VALUE)
-
如果使用JS进行浮点数计算,可能得到一个不精确的结果
-
所以千万不要使用JS进行对精确度要求比较高的运算
-
如果要表示16进制数字,需要以0x开头
-
如果需要表示8进制,需要0开头
-
如果需要表示2进制的数字,则需要0b开头,不过不是所有浏览器都支持
-
-
Boolean 布尔值
-
true - 表示真
-
false - 表示假
-
-
Null 空值
-
类型的值只有一个,就是null,表示空值
-
这个值专门用来表示 一个空对象
-
使用typeof 检查null,返回object
-
-
Undefined 未定义
-
Undefined 值只有一个,就是undefined,表示未定义
-
使用typeof 检查Undefined,返回 undefined
-
-
Object 对象
-
-
其中String、Number、Boolean、Null、Undefined属于基本数据类型
-
Object属于引用数据类型
-
js中的变量都是保存到栈内存中的
-
形式:变量名=变量值
-
基本数据类型的值直接在栈内存中进行存储
-
值与值之间是独立存在的,修改一个变量不会影响其他的变量的值
-
-
js对象是保存到堆内存中的
-
每创建一个新的对象,就会在堆内存中开辟出一个新的内存空间
-
而变量保存的是对象所对应的内存地址(对象的引用)
-
当通过一个变量修改属性时,另一个也会受到影响
-
-
当比较两个基本数据类型的值时,就是比较值
-
而比较两个引用数据类型时,他们比较的是对象的内存地址
-
如果两个对象是一模一样的,但是内存地址不同,但也返回false
-