1 - 内置对象
1.1 内置对象
1.1.1 Math对象
介绍
Math 对象不是构造函数,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值,
取整、最大值等)可以使用 Math 中的成员。
属性,方法名 | 功能 |
---|---|
Math.Pl | 圆周率 |
Math.floor() | 向下取整 |
Math.ceil() | 向上取整 |
Math.round() | 四舍五入版 就近取整 注意 -3.5 结果是 -3 |
Math.abs() | 绝对值 |
Math.max()/Math.min() | 求最大和最小值 |
Math.random() | 获取范围在[0,1)内的随机值 |
代码案例,取指定范围内的随机整数
console.log(Math.floor(Math.random()*5))
/*这里面Math.random()是获取(0,1)之间的随机值,包含小数,
我们要取的是随机整数,所以还要使用Math.floor()这个内置函数
是向下取整,*5就是0-5之间的整数,但是不会取到5,因为是向下
取整。
*/
1.1.2 日期函数
Date 对象和 Math 对象不一样,Date是一个构造函数,所以使用时需要实例化后才能使用其中具
体方法和属性。Date 实例用来处理日期和时间
使用Date实例化日期对象
获取当前时间实例化
var now = new Date();
//实例化日期对象没有给参数的话就默认当前时间对应的日期对象
获取指定时间的日期对象
var future = new Date('2016/6/1');
Date实例的方法和属性
方法名 | 说明 | 代码 |
---|---|---|
getFullYear() | 获取当年 | now.getFullYear() |
getMonth() | 获取当月 (0-11) | now.getMonth() |
getDate() | 获取当天日期 | now.getDate() |
getDay() | 获取星期几 | now.getDay() |
getHours() | 获取当前小时 | now.getHours() |
get() | 获取当前分钟 | now.getMinutes() |
getSeconds() | 获取当前秒钟 | now.getSeconds() |
具体案例,获取当前日子是星期几
var now = new Date();//第一步是实例化日期对象,不给传值
console.log(now.getDay())//第二步是利用getDay()来获取星期几
2.1 数组对象
2.1.1 检测是否是数组
-
instanceof 运算符
-
instanceof 可以判断一个对象是否是某个构造函数的实例
var arr = [1, 23]; var obj = {}; console.log(arr instanceof Array); // true是数组 console.log(obj instanceof Array); // false没有定义没有实例化,不是数组
-
-
Array.isArray()
-
Array.isArray()用于判断一个对象是否为数组
var arr = [1, 23]; var obj = {}; console.log(Array.isArray(arr)); // true console.log(Array.isArray(obj)); // false
-
2.1.2 添加删除数组元素的方法
-
数组中增加和删除元素方法总结
方法名 说明 返回值 push(参数1…) 末尾添加—个或多个元素,注意修改原数组 返回新的长度 pop() 删除数组最后一个元素,把数组长度减1无参数、修改原数
组返回他删除的元素的值 unshift(参数1…) 向数组的开头添加一个或更多元素,注意修改原数组 返回新的长度 shift() 删除数组的第一个元素,数组长度减1无参数、修改原数组 返回第一个元素的值 -
代码示例
-
有一个长度未知的数组a,如果它的长度为0就把数字1添加到数组里面,否则就将第一个元素删除
var a=[1,2,3,4,5] if(a.length==0){ a.unshift(1) }else{ a.shift() } console.log(a)
思路:随便定义一个数组,首先利用a.lenght来判断这个数组是否为空,如果是就用a.unshift方法把数字1添加到数组a的里面;否则就用a.shift方法删除第一个元素
-
2.1.3 数组排序
-
数组本身排序的方法
方法名 说明 是否修改原数组 reverse() 颠倒数组中元素的顺序,无参数 会修改 sort() 对数组函数进行排序 会修改 sort方法传输参数来设置升序和降序a-b是升序,b-a是降序
-
代码示范
-
这里有一个数组a=[2,5,7,3,0,1]把他进行排序
var a=[2,5,7,3,0,1] a.sort(); console.log(a)
-
2.1.4 数组索引的方法
-
数组中获取指定元素的索引值的方法
方法名 说明 返回值 indexOf() 数组中查找给定元素的第一个索引 如果存在返回索引号如果不存在,则返回-1 lastlndexOf() 在数组中的最后一个的索引, 如果存在返回索引号如果不存在,则返回-1 -
代码示例
-
这里有个数组a=[2,5,7,3,0,1,7]用indexOf()查找7第一次出现的索引值
var c=[2,5,7,3,0,1] console.log(c.indexOf(7))
-
这里有个数组a=[2,5,7,3,0,1,7]用lastlndexOf()查找7第二次出现的索引值
var c=[2,5,7,3,0,1,7] console.log(c.lastIndexOf(7))
-
2.1.5 数组转字符串
-
数组中把数组转换为字符串的方法
方法名 说明 返回值 toString() 把数组转换成字符串,逗号分隔每一项 返回字符串 join(“分隔符”) 方法用于把数组中的所有元素转换为一个字符串。 返回字符串 注意:如果join()里面没有传分隔符,则默认就是以“,“隔开。
-
代码案例
-
这里有一个数组a=[h,e,l,l,o]把他以”-”分隔符分开变成字符串
var a=['h','e','l','l','o'] console.log(a.join("-"))
-