1.内置对象
1.js中的对象分为3种:自定义对象,内置对象,浏览器对象
2.Math对象
2.1.Math 对象不是构造函数,它具有数学常数和函数的属性和方法。
2.2属性及功能
Math.PI() 圆周率
Math.floor() 向下取整
Math.ceil() 向上取整
Math.round() 四舍五入版 就近取整 注意 -3.5 结果是 -3
Math.abs() 绝对值
Math.max()/Math.min() 求大和小值
Math.random() 获取范围在[0,1)内的随机值
3.日期对象
3.1.获取当前时间必须实例化:var now=new Date();
获取指定时间的日期对象:var future = new Date (‘2001/6/10’)
3.2.使用Date实例的方法和属性
getFulYear() 获取当年
getMonth() 获取当月(0-11)
getDate() 获取当天日期
getDay() 获取星期几(周日0到周六6)
getHours() 获取当前小时
getMinutes()获取当前分钟
getSeconds() 获取当前秒钟
4.数组对象
4.1.创建数组:var arr=[];
var arr = new Array()
4.2.检测是否为数组:console.log(arr instanceof Array); console.log(Array.isArray(arr));
4.3.添加删除数组元素的方法:
push在末尾添加一个或多个元素;
pop删除 数组最后一个元素;
unshift在开头添加一个或多个;
shift删除末尾的第一个元素
4.4.数组排序:reserve()颠倒数组中的顺序,无参数;
sort()对数组的元素进行排序
注意:sort方法需要传入参数来设置升序、降序排序 ,如果传入“function(a,b){ return a-b;}”,则为升序;如果传入“function(a,b){ return b-a;}”,则为降序
4.5.数组索引方法:indexOf()是数组中查找给定元素的第一个索引,若不存 在,返回-1;lastIndexOf()在数组中的最后一个索引,若不存在,返回-1
4.6.其他方法:concat连接两个或多个数组,不影响原数组;slice()数组 截取slice(begin,end);splice()数组删除splice(第几个开始,要删除个数)
5.字符串对象
5.1.基本包装类型:把简单数据类型包装成为复杂数据类型,这样基本数据
类型就有了属性和方法。
var temp = new string(‘andy’) ;
str=temp;
temp=null;
//销毁临时变量
5.2.根据字符返回位置:indexOf(‘要查找的字符’,开始的位置)返回指定 内容在原字符串中的位置,找不到就返回1;IastIndexOf()从后往前找,只找一个匹配的
5.3.根据位置返回字符:str.charAt();str.chatCodeAt();str[index]
5.4.replace()方法:字符串.replace(被替换的字符串,要替换为的字符串)
5.5.split()方法;字符串.split("“分割字符”")
2.简单数据类型和复杂数据类型
1.简单数据类型
简单类型(基本数据类型、值类型):在存储时变量中存储的是值本身,包括 string ,number, boolean,undefined,null
2.复杂数据类型
复杂数据类型(引用类型):在存储时变量中存储的仅仅是地址(引用) ,通过 new 关键字创建 的对象(系统对象、自定义对象),如 Object、Array、Date等;
3.堆栈
3.1堆栈空间分配区别
栈(操作系统):由操作系统自动分配释放存放函数的参数值、 局部变量的值等。其操作方式 类似于数据结构中的栈;简单数据类型存放到栈里面
堆(操作系统):存储复杂类型(对象),一般由程序员分配释放, 若程序员不释放,由垃圾回收 机制回收
3.2 简单数据类型的存储方式:值类型变量的数据直接存放在变量(栈空间)中
3.3复杂数据类型的存储方式:引用类型变量(栈空间)里存放的是地址,真正的对象实例存放在堆 空间中
3.4.简单类型传参
3.5.复杂数据类型传参