数组

来源:互联网 发布:linux的selinux 编辑:程序博客网 时间:2024/06/03 04:19
  1. 数组的定义赋值
  1. 数组的创建(下标依旧从0开始)
(1)字面量定义:var arr = [1,2,3] ;
(2)对象定义(数组的构造函数):var arr = new Array(参数)
    参数位置一个数值时为数组长度,多个数值时为数组中的元素
2、一个数组里面存储的数据可以是不同类型(数字、字符、布尔值等)
3、数组的使用
(1)获取元素的值:arr[]
(2)arr[“1”] = “blue”给第2个元素重新赋值(同时追加数组元素的时候也可以直接这么写)
(3)length属性:获取/设置数组中元素的个数
二、数组的合并
1、数组名.concat(数组名) ;à 把两个数组的数据连在一起
三、join方法:返回一个字符串数组
四、数组高级API
1、侧重点
(1)调用者:谁调用的
(2)参数:有无,几个
(3)返回值:有无,什么类型
(4)功能:干什么用的
2、常用方法
(1)检测数组
<1>instanceof()
<2>isArray()
(2)转换数组
<1>toString() à  把数组转换成字符串,每一项分割
<2>valueOf() à  返回数组对象本身
(3)join(“”):把数组元素用特殊方式连接成字符串
    <1>参数决定用什么连接,无参默认用逗号“,”连接;空格表示没有任何符号连接(但是元素之间会有空格);用空字符串“”连接表示无缝连接元素
(4)栈操作(先进后出,也叫压栈)
<1>push():在数组最后面插入项(可以插入数组/多个元素),返回新数组的长度
<2>pop():删除数组的最后一项,返回被删除的元素
(5)队列操作(先进先出,先排队的先打饭)
<1>shift():删除第一个数组元素,返回被删除的元素
<2>unshift():在数组最前面插入项,返回新数组的长度
(6)排序方法
<1>reverse():翻转数组(返回原数组)
<2>sort():即使是数组sort也是根据字符从小到大排序(能对数组和字母进行排列,但是只能根据第一个字符排列;回调函数可以实现按你设置的规则排列)
(7)操作方法
<1>concat():把参数拼接到当前数组
<2>slice():从当前数组中截取一个新的数组,不影响原来的数组,参数start从0开始,end从1开始(给予负值是截取最后的,最后开始截取几个)
  1. slice(开始截取的位置):从开始截取的位置,截取到最后
  2. slice(开始截取的位置,结束的位置<包左不包右,不包括结束的索引>)
<3>splice():删除/替代当前数组的某些项目,参数start、deleteCount、options(要替换的项目)
①替换的元素不能是以数组的形式存在,否则将整个数组放进原数组中形成二位数组
(8)位置方法(两个都是如果没有找到就返回-1)
    <1>indexOf(“元素”):给定某个元素然后从前往后查索引,找到一个后立刻返回索引位置,一次查找一个
<2>ladtIndexOf(“元素”):给定某个元素然后从后往前查索引,
(9)数组迭代方法(不会修改原数组,有了这个就可以不用for循环):
<1>every():对数组中给每一项都运行以下函数(返回的是boolean值,参数是回调函数),如果都返回true,every就返回true,如果有一项返回false,则停止遍历every并返回false
    array.every(function(item,index,arr){
       
})
<2>filter():对数组中每一项运行以下函数,该函数返回结果是true的项组成的新数组(就是返回一个新数组)
    var arr = array.filter(function(item,index,arr){
})
<3>forEach():遍历数组(无返回值,纯操作数组中的元素)
    array.forEach(function(item,index,arr){
})
<4>map():对数组中每一项运行以下函数,把每个值返回的值组成一个新的数组
    var arr = array.map(function(item,index,arr){
})
<5>some():对数组中每一项运行以下函数,如果该函数有某一项返回true,则some返回true
    var arr = array.some(function(item,index,arr){
})
3、伪数组和arguments
    (1)arguments只在函数中使用,表示的是实参的数组
(2)伪数组:可以修改元素的值,但是不能修改长短的数组
<1>arguments是一个伪数组
4、清空数组
(1)数组名.splice():删除数组中所有项目
(2)令数组名.length=0;,
(3)数组名 = [];
原创粉丝点击