5.引用类型
5.1Object类型
初识:
1.Object就是万物皆可为对象的那个对象,对象是一种以键值对的形式存储数据的存储类型
2.要什么就new什么,var person = new Object();
3.数组和函数,其实也都是Object,今天不讲原型链,只是来认识,这个以键值对形式存储数据的对象。var a = { name:“zs”,age:13 }
5.2Array类型
数据有一堆方法,等等,数组是啥?
var a=[1,2,3,4,5]这就是数组,或者var a = new Array(1,2,3,4,5)
需要注意的是new Array()时如果只传一个参数会被当做数组的长度
这样就让大家不好理解,于是我们可以用var a=Array.of(1);来创建数组,支持任意位数
监测方法 a instanceof Array
转换方法toString() valueOf()
pop()去掉尾巴
push()在尾巴上添加
shift()去掉头
unshift()在头上加上去
sort()排序
slilce()取一段
splice()增删改查都行
filter()过滤
map()处理
reduce()归并方法
some()是否存在
every()是否都这样
forEach()遍历
5.3Date类型
new Date()
Date.now()
Date的实例对象有一些方法
得到年月日时分秒啥的
getTime()
getFullYear()
getMonth()得到结果需要+1
getDate()
getHours()
getMinutes()
getSeconds()
5.4RegExp正则
修饰符i,m,g
创建常用方法是let a=/规则/修饰符;
方法有test()和exec()
5.5.Function类型
没有重载,因为没有函数签名
声明方式:
function a(){}
var b=function(){}
里面有两个特殊的对象arguments和this
前者是函数的影子,可以拿函数的参数,也可以自调用
arguments[0]就是第1个参数
arguments.callee()调用自身
有个length属性,是希望接收的参数个数
还有个prototype,就是原型
5.6包装类
Boolean()
Number()
String()
内置对象
Global对象和Math对象
前者是全局对象,浏览器默认指向window,都是一回事
数学那个,里面就有像Floor()Ceil()取下上限,有PI这种属性,有random()随机数方法