目录
内置对象:浏览器自己封装好的对象,可以直接调用属性和方法。
1 Array
数组中的每一个位置可以放置任何类型的数据,且数组的大小是可以动态调整的,随着数据的添加自动增长。
1.1 创建数组
1、使用Array构造函数
语法:new Array()
小括号说明():
1、预先知道数组要保存的项目数量
2、向Array构造函数中传递数组应包含的项
2、使用数组字面量表示法
由一对包含数组项的方括号[ ]表示,多个数组项之间以逗号隔开。
1.2 数组元素的读写
读取和设置值时,使用方括号并提供相应的索引,索引从零开始
1.3 数组长度
语法:array.length 功能:获取数组array的长度 返回值:number
说明:1、通过设置length可以从数组的末尾移除项或向数组中添加新项。
var arr=['a','b','c','d'];
arr.length=3;
console.log(arr); 打印 a,b,c
console.log(arr[3]); 打印 undefined
不建议这样写
2、把一个值放在超出当前数组大小的位置上时,会重新计算数组长度值,长度值等于最后一项索引加1。
1.4 数组的栈方法
1.4.1 push()
语法: arrayObject.push(newele1,newele2,...,newex)
功能: 把它的参数顺序添加到arrayObject的尾部。
返回值: 把指定的值添加到数组后的新长度。
1.4.2 unshift()
语法: arrayObject.unshift(newele1,newele2,...,newex)
功能: 把它的参数顺序添加到arrayObject的开头。
返回值: 把指定的值添加到数组后的新长度。
1.4.3 pop()
语法: arrayObject.pop()
功能: 删除arrayObject的最后一个元素。
返回值: 被删除的那个元素。
1.4.4 shift()
语法: arrayObject.shift()
功能: 删除arrayObject的第一个元素。
返回值: 被删除的那个元素。
1.5 数组转换与排序的方法
1.5.1 join()
语法: arrayObject.join(separator) separator:分隔符,即用什么分隔符.也可为空
功能: 用于把数组中的所有元素放入一个字符串。转换成字符串。
返回值: 字符串。
1.5.2 reverse()
语法: arrayObject.reverse()
功能: 用于颠倒数组中元素的顺序。不会进行排序。
返回值: 数组。
1.5.3 sort()
语法: arrayObject.sort(sortby) separator:分隔符,即用什么分隔符.也可为空
功能: 用于对数组的元素进行排序。
返回值: 数组。
说明:1、即使数组中的每一项都是数值,sort()方法比较的也是字符串。
2、sort()方法可以接受一个比较函数作为参数。
var arr=[2,56,32,3,55,-1];
arr.sort(function(a,b) {return b-a}); 降序
arr.sort(function(x,y) {return x-y}); 升序
sort里面接收一个比较函数作为参数,通过这个匿名函数,使数值型内容可以排序,不再转换成字符串
1.6 数组连接和截取方法
1.6.1 concat()
语法: arrayObject.concat(arrayX,arrayY,...,arrayN)
功能: 用于连接两个或多个数组。
返回值: 数组。
var arr1=["a","b","c"],
arr2=["d","e",1,3],
arr3;
arr3=arr1.concat(arr2);
1.6.2 slice()
语法: arrayObject.slice(start,end)
功能: 从已有的数组中返回选定的元素。
返回值:数组
参数:start(必需)规定从何处开始选取,如是负数,从数组尾部开始算起
end(可选)规定从何处结束选取,是数组片段结束处的数组下标(不包含该元素)
从start到end-1的元素
说明:如果没有指定end,切分的数组包含从start到数组结束的所有元素
如果slice()方法的参数中有一个负数,则用数组长度加上该数来确定相应的位置。
1.7 数组删除、插入、替换方法
1.7.1 splice()删除
语法: arrayObject.splice(index,count)
功能: 删除从index处开始的零个或多个元素。
返回值:含有被删除的数组的元素。
说明:count是要删除的个数,为0则不删除,如果不设置,删除从index开始的所有值。
1.7.2 splice()插入
语法: arrayObject.splice(index,0,item1,...,itemX)
功能: 在指定位置插入值。
返回值:空数组。
说明:index是插入到哪个位置,0表示不删除,item1~X表示要插入的项
1.7.3 splice()替换
语法: arrayObject.splice(index,count,item1,...,itemX)
功能: 在指定位置插入值,且同时删除任意数量的项。
返回值:从原始数组中删除的项(如果没有删除任何项,则返回空数组)。
说明:index是插入到哪个位置,count是要删除的项数,item1~X表示要插入的项
1.8 数组位置方法,查找
比较第一个参数与数组中的每一项时,会使用全等操作符,要求查找的项必须严格相等.
1.8.1 indexOf()
语法: arrayObject.indexOf(searchvalue,startIndex)
功能: 从数组的开头(位置0)开始向后查找。
返回值:number,查找的项在数组中的位置,没有找到的情况下返回-1。
说明:searchvalue:必需,要查找的项; startIndex:可选,起点位置的索引,不设的话默认从0开始.
1.8.2 lastIndexOf()
语法: arrayObject.lastIndexOf(searchvalue,startIndex)
功能: 从数组的尾部开始向前查找。
返回值:number,查找的项在数组中的位置,没有找到的情况下返回-1。
说明:searchvalue:必需,要查找的项; startIndex:可选,起点位置的索引.
改变原数组的:
shift:将第一个元素删除并且返回删除元素,空即为undefined
unshift:向数组开头添加元素,并返回新的长度
pop:删除最后一个并返回删除的元素
push:向数组末尾添加元素,并返回新的长度
reverse:颠倒数组顺序
sort:对数组排序
splice:splice(start,length,item)删,增,替换数组元素,返回被删除数组,无删除则不返回
不改变原数组的:
concat:连接多个数组,返回新的数组
join:将数组中所有元素以参数作为分隔符放入一个字符
slice:slice(start,end),返回选定元素
map,filter,some,every等不改变原数组
2 String
2.1 字符串检索方法
2.1.1 charAt()
语法: stringObject.charAt(index)
功能: 返回stringObject中index位置的字符,若该位置没有字符,返回为空。
2.1.2 charCodeAt()
语法: stringObject.charAt(index)
功能: 返回stringObject中index位置字符的字符编码。
2.1.3 indexOf()
语法: stringObject.indexOf("o")
功能: 从一个字符串中搜索给定的子字符串,返回子字符串的位置。
返回值:数值。
说明:如果没有找到该子字符串,返回-1。
2.1.4 lastIndexOf()
语法: stringObject.lastIndexOf("o")
功能: 从一个字符串中搜索给定的子字符串,返回子字符串的位置。从右边开始搜索
返回值:数值。
说明:如果没有找到该子字符串,返回-1。
2.2 字符串截取方法
2.2.1 slice()
语法: stringObject.slice(start,end)
功能: 截取子字符串。
返回值:数组
参数:start(必需)规定从何处开始选取,如是负数,从字符串尾部开始算起
end(可选)规定从何处结束选取,(end本身不在截取范围之内)
从start到end-1的元素
说明:如果没有指定end,截取的字符串包含从start到字符串结束的所有字符,
如果slice()方法的参数中有负数,则用字符串长度加上该数来确定相应的位置。
2.2.2 substring()
说明:语法及功能同slice()完全一样.
区别在于:
1、当参数为负数时,自动将参数转换为0。
2、substring()会将较小的数作为开始位置,将较大的数作为结束位置。
2.2.3 substr()
语法: stringObject.substr(start,len)
功能: 截取子字符串。
参数:start(必需),指定子字符串开始位置。
len(可选),表示截取的字符总数,省略时截取至字符串的末尾。
当start为负数时,会将传入的负值与字符串的长度相加。
当len为负数时,返回空字符串。
2.3 字符串转换和替换方法
2.3.1 split() 转换成数组
语法: stringObject.split(separator)
功能: 把一个字符串分割成字符串数组。
返回值:数组。
说明:separator:必需,分隔符。
如果中间是用空字符串(””)拆分,那么字符串中的每个字符之间都会被分割。
2.3.2 replace()
语法: stringObject.replace(regexp/substr,replacement)
功能: 在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
返回值:string。原有的字符串不会发生变化
参数: regexp:必需。规定子串或要替换的模式的RegExp对象。
replacement:必需。一个字符串值。
2.4 转换大小写
2.4.1 toUpperCase()
语法: stringObject.toUpperCase()
功能: 把字符串转换为大写。
var str="hello world";
var upper=str.charAt(6).toUpperCase(); 打印 W
不修改原来的字符串,生成一个副本。
2.4.2 toLowerCase()
语法: stringObject.toLowerCase()
功能: 把字符串转换为小写。
3 Math
3.1 求最值方法
3.1.1 min()
语法: Math.min(num1,num2,num3...,numN)
功能: 求一组数中的最小值。
返回值:Number。如果数据中出现非数字,返回NaN
3.1.2 max()
语法: Math.max(num1,num2,num3...,numN)
功能: 求一组数中的最大值。
返回值:Number。
3.2 取整方法
3.2.1 ceil()
语法: Math.ceil(num)
功能: 向上取整。
返回值:Number。
3.2.2 floor()
语法: Math.floor(num)
功能: 向下取整。
返回值:Number。
3.2.3 round()
语法: Math.round(num)
功能: 四舍五入为整数。
返回值:Number。
3.3 求绝对值方法
3.3.1 abs()
语法: Math.abs(num)
功能: 返回num的绝对值。
返回值:Number。
3.4 生成随机数方法
3.4.1 random()
语法: Math.random()
功能: 返回 ≥0&&<1 的一个随机数。
返回值:Number。
求n到m之间的随机整数的公式:random=Math.floor(Math.random()*(m-n+1)+n);
4 Date
4.1 时间获取的方法
语法: new Date()
功能: 创建一个日期时间对象
返回值:再不传参的情况下,返回当前的日期时间对象
说明: 如果想根据特定的日期和时间创建对象,必须传入表示该日期的毫秒数或者是一组用逗号隔开的表示年月日时分秒的参数.
获取年月日时分秒及星期的方法
new Date().getFullYear(): 返回4位数年份;
其他如下:
getMonth() 返回月份 0-11
getDate() 返回月份中的天数
getDay() 返回星期 0-6
getMinutes() 返回小时
getSeconds() 返回秒
getHours() 返回小时
getTime() 返回日期的毫秒数
4.2 时间设置的方法
1、把get***改成set***
<script>
var today=new Date();
today.setMonth(8); 将获取到的月份变为8,则实际月份为9. 若设置为14,则显示为2,实际为3
today.getMonth(); 验证
</script>
2、使用new Date创建新的对象。具体方法为4.1里说明。
输出为2017,3 ,15>11,年份自动加一