JS基础--数据类型与变量

131 阅读2分钟

1.JS的组成:ECMAScript、DOM、BOM

2.变量:本质就是程序在内存中申请的一块 用来存放数据的空间。

image.png

变量命名规则

3.简单数据类型(值类型)

3.1 Number: 正数、负数、整数、小数

3.2 String

3.3 Boolean( 0、-0、NaN、''、null、undefined、document.all会被Boolean()函数转换成false)

3.4 Undefined:未定义类型,只有一个值,就是小写的 undefined

3.5 Null: 空类型,只有一个值,就是小写的null

image.png

4.复杂数据类型(引用类型)

4.1 Object

4.2 Array

4.3 Function

5. 数学运输的特殊情况

5.1 数字 / 0 = Infinity ,因为除数不能为 0 (除数为0 会得到 无穷大)

5.2 0 / 0 = NaN

5.3 数学中除不尽时会得到无限位小数,JS 中只保留小数点后面 15-17位,如:

10 / 3 = 3.3333333333333335

在JS 中,不要直接使用小数数值进行运算,那在JS 中遇到 小数运算 该如何处理呢?

思路:先乘以 一个值,做正常运算,再除以一个值

let a = 0.12312 * 10000; -> 12312

let b = a * 3; // 12312 * 3  /10000

6. typeof 检测数据类型

image.png

typeof检测数据类型 

7.关于转数值的两个特殊值

+'' -> 0

+null -> 0

parseInt('') -> NaN

parseInt(null) -> NaN

8.数组

8.1 本质:程序在内存中申请的N块连续的空间,可以用来保存一组数据。

8.2 数组提供了4个便捷的新增和删除元素的方法

新增方法:unshift() 和 push(),都可以将一个元素顺序追加到数组的 "头" 和 "尾" 部,并 返回数组长度。

删除方法:shift() 和 pop() ,都可以将数组里 "头" 和 "尾" 部顺序取出一个元素,并 返回取出的元素。

image.png

数组的新增与删除

2.3 数组的栈和队列用法

2.3.1 栈

先进后出 LIFO-LastInFirstOut

push() + pop() 组合 -》 从尾部 添加,从 尾部 获取

unshift() + shift() 组合 -》 从头部 添加,从 头部 获取

2.3.2 队列

先进先出(FIFO-FirstInFirstOut))

push() + shift() 组合 -》 从尾部 添加,从 头部 获取

unshift() + pop() 组合 -》 从头部 添加,从 尾部 获取

3.函数

本质:用来装代码的盒子。

4.对象

4.1 本质:是一个 可以装 任意数据和代码的盒子(超级盒子)。

4.2 对象的成员

属性:属性值是非函数

方法:值是函数

对象的方法其实 也是对象的 一个属性,只不过属性值为方法

5.简化理解

image.png