- 引用类型的值是引用类型的一个实例
- 它是一种数据结构 是由构造函数创建的
1.Object 类型
一. 基础概念
- 创建实例的方法 var obj = new Object() / var obj = {A:111} / var obj = { }
- 对象属性用 A.b/A['b'] 获取, **[ ] 可以使用 ['变量'] **
2.Array 类型
一. 基础概念
- 创建实例的方法 var arr = new Array(length) / var arr = [A,B,C] / var arr = []
- length 属性是可写的 eg: arr[1] = 'b'
- 检测数组 arr instanceof Arrary / arr.isArray()
- 转换方法 arr.toString() ** valueof(arr) 等价于 arr**
二.重要概念
- 数组栈方法 - LIFO (后进先出)
push() //推入
pop() //弹出
- 数组队列方法 - FIFO (先进先出)
shift() //移除第一项
unshift() //增加第一项
- 数组重排序方法 - FIFO (先进先出) 返回的是 数组
reverse() //反向
sort() //从小到大排序
- 操作方法
concat() //增加
slice() //截取
//1.创建新的数组 不会影响原来的数组
let arr = [1,7,44,2]
arr.slice(0,2) //[1, 7]
arr // [1, 7, 44, 2]
splice() //删除 ,插入 ,替换
- 位置方法 **indexOf() lastIndexOf() **
- 迭代方法
every() // 每个都满足 true
some () //一个满足true
filter() //筛选出符合的true 组成新的数组返回
foreach //每一项执行操作方法 无返回值
map() // 返回数组每一项操作后的结果
-归并方法
reduce() //迭代处理
reduceRight() //从右开始迭代处理
3.Date类型
一. 基础概念
- var day = new Date()
4.RegExp 类型
一. 基础概念
-
var expression = /pattern/ flags (验证规则/模式)
-
g (gobal 全局) i(不区分大小写) m(multiline 多行)
4.Function 类型
一. 基础概念
- 每个函数都是function 类型的实例
- 函数名是指向函数的指针
一. 重要概念
- 函数没有重载 同名函数会被覆盖
- 函数声明 > 函数表达式** 原因:函数声明提升,预先读取**
getName() //Uncaught TypeError: getName is not a function
getName2() //zzz
var getName = function(){return 'zxq'};
function getName2(){
return 'zzz'
}
getName() //zxq
- 函数名本身是变量 可以作为值来使用
- 函数内部属性 arguments(参数) this(环境对象)