2.3 数组及常用方法

2.3 数组及常用方法

简述

1.数组里面可以放任意的数据类型

2.数组是引用数据类型,操作数组时实际是在操作数组的内存地址

3.数组是由字符串属性名和属性值组成的特殊对象,我们把数组的属性名叫做数组的索引,所以数组的索引是字符串类型的,如果索引不是字符串类型,则会隐式转换成字符串类型。

 

例:arr[function(){}]=100; 表示让函数作为数组的索引,并且赋值

控制台console,function(){}:100 ,数组的属性值为字符串

创建数组的方式   var arr = [0,false,true,3,undefined,null,{}]  arr.length 7

数组的特点:length属性表示数组的长度,数组的索引从0开始

 

1.数组的增加     原来数组arr被改变了,返回的结果是arr.length

  var arr = [1,2,3,4,5,6];

  arr.push() 作用:在数组的后面添加一个或多个数据

  arr.unshift() 作用:在数组的前面添加一个或多个数据

 

  arr.push("apply")  --->[1, 2, 3, 4, 5, 6,"apply"]

2.数组的删除   数组arr被改变了,返回的结果是被删除的数据

  arr.pop() 作用:删除数组最后一个数据

  arr.shift() 作用:删除数组最前面一个数据

 

3.splice(n,m)  数组arr被改变了,返回的结果是被删除的数据,以数组的形式显示

  删除数据

  arr.splice(n,m)  作用:从arr的索引n位置删除m个数据

  arr.splice(n)   表示删除数组索引n之后的所有数据

  arr.splice()    表示不删除数据

  arr.splice(0)   表示删除数组索引0之后的所有的数据

  arr.splice(2,3)    --> [1, 2, 6,"apply"] 从3开始到5删掉了3个数据

 

  修改数组      数组arr被改变了,返回的结果是被删除的数据

  arr.splice(n,m,新增数据)

  作用:从数组的索引n开始删除m个数据,同时把新增数据插入在索引n前面

  arr.splice(2,2,"aaa")  -->  [1, 2, "aaa", 5, 6, "apply"]

 

4.数组反转    数组arr被改变了,返回结果是 倒序后的数组

  arr.reverse()  作用:把原来数组中的每一个数据颠倒顺序排列

  arr.reserve -->["apply", 6, 5, 4, 3, 2, 1]

 

5.arr.indexOf(指定数据)   从左向右查看指定数据在数组中的索引位置

  如果指定数据不在数组里面 则结果是-1

  arr.indexOf("apply") ---> 0

 

6.arr.lastIndexOf(指定数据)    从右向左查看指定数据在数组中的索引位置

  如果指定数据不在数组里面 则结果是-1

  var arr = [1,2,3,4,5,6,];

  arr.lastIndexOf("apply") ---> 0

 

7.Array.isArray(数据)   判断数据是不是数组

  如果arr是数组,那么Array.isArray(arr)的结果是true

  如果arr不是数组,那么Array.isArray(arr)的结果是false

 

      /***-----不改变原来的数组 8-10 ---------*/

 

8.arr.slice(n,m)    作用:数组查询,没有改变原数组

  arr.slice(n,m)的返回结果是从索引n开始截取m-n个数据,以数组方式返回

 

9.arr.concat(数组1,数组2)   作用:实现字符串的拼接,没有改变原数组

  arr.concat(数组1,数组2)的返回结果是合并后的新数组

  可以添加任何的数据类型

 

 

10.arr.join(拼接符)  没有改变原来的数组

  拼接符需要是字符串 如果不是字符串 则隐式转成字符串

  把数组中的每一项通过拼接符连接起来,成为一个字符串

 

 

11.数组的排序arr.sort()      数组arr被改变了

  作用:把数组中的每一个数据按照一定顺序排列,结果是排好顺序之后的新数组;arr.sort()这个方法会把数组中的每个数据先转化成字符串,之后比较字符串的大小,按照字符串的大小来排列

  1.按照第一个数字的从小到大排列

  2.如果第一位数字都一样,就按照第二位数字排列...

  3.如果一个函数当做实参,则这个函数叫做回调函数

  arr.sort(function(a,b){

  return 值

  如果是正值 a,b就颠倒位置

  如果是负值 a,b就不颠倒位置

})

  var arr=[2,34,54,10,7]

  arr.sort(function(a,b)){

  /* a b

  2 34

  34 54

  54 10 [2,34,10,54,7]

  54 7 [2,34,10,7,54]

  2 34

  34 10 [2,10,34,7,54]

  34 7 [2,10,7,34,54]

  2 10

  10 7 [2,7,10,34,54]

  * */

  return a-b

}

---->[2, 7, 10, 34, 54]

 

补充

 1.数据传上去,用形参接收

 

 

2.往数组添加数据除了用push,还可以用arr[3]='ora'添加

 

 

posted @ 2019-06-24 17:32  小小oRa  阅读(305)  评论(0编辑  收藏  举报