数组的操作

1、push: 向尾部添加一个或多个元素,并返回新的长度

  1. var arr=[1,2,3,4,5];
  2. arr.push(6,7);
  3. 结果:7
  4. arr=[1,2,3,4,5,6,7]

2、unshift :向头部添加一个或多个元素,并返回新的长度

  1. var arr=[1,2,3,4,5];
  2. arr.unshift(0,0);
  3. 结果:7
  4. arr=[0,0,1,2,3,4,5]

3、pop:删除并返回最后一个元素

  1. var arr=[1,2,3,4,5];
  2. arr.pop();
  3. 结果:5
  4. arr=[1,2,3,4]

4、concat:连接数组

  1. var arr=[1,2,3,4,5];
  2. var arr2=[6,7]
  3. arr.concat(arr2);
  4. 结果:[1,2,3,4,5,6,7]

5、splice(起始下标位置,删除的个数,替换的元素):插入,删除,替换元素

  1. var arr=[1,2,3,4,5];
  2. arr.splice(0,2,1);
  3. 结果:[1,2]
  4. arr=[1,3,4,5]

6、slice:从已有的数组中返回选定的数组

  1. var arr=[1,2,3,4,5];
  2. arr.slice(1,3)
  3. 结果:[2,3]
  4. arr3.slice(开始位置,结束位置) 包含开始,不包含结束

7、indexOf:在数组中搜索指定元素的位置,存在返回下标,不存在返回-1

  1. var arr=[1,2,3,4,5];
  2. arr,indexOf(3)
  3. 结果:2
  4. arr.indexOf(6)
  5. 结果:-1

8、reverse:颠倒数组中元素的顺序

  1. var arr=[1,2,3,4,5];
  2. arr.reverse()
  3. 结果:[5,4,3,2,1]

数组的迭代

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

1.forEach 格式:forEach(function(value,index,arr){}) value 数值、 index 下标、 arr 原数组

  1. var arr=[1,2,3,4,5];
  2. arr.forEach(function(value,index,arr){
  3. console.log(value+"____下标"+index+"____原数组"+"arr")
  4. });

2、map()映射,原数组名.map(function(value,index,arr){})

  1. var arr=[1,2,3,4,5];
  2. var result= arr.map(function(value,index,arr){
  3. return value*2;
  4. });
  5. console.log(result);//[2,4,6,8,10]

3、every(每个) every(function(value,index,arr){}) :数组元素全部满足条件返回true,否则返回false

  1. var arr=[1,2,3,4,5];
  2. var result=arr.every(function(value){
  3. return value % 2==0;
  4. })
  5. console.log(result);//false

4、some(一些):只要一个元素满足条件,则返回true,否则返回false

  1. var arr=[1,2,3,4,5];
  2. var result=arr.some(function(value){
  3. return value % 2==0;
  4. })
  5. console.log(result);//true

5、filter(过滤):把当前符合条件的值返回,不符合条件的进行过滤

  1. var arr=[1,2,3,4,5];
  2. var result = arr.filter(function(value){
  3. return value % 2 ==0;
  4. })
  5. console.log(result);//[2,4]

ES6: function(){} 的新写法 ()=>{}

  1. ()=>{} 使用箭头函数 当是一个值的时候可以省略,多个值必须加小括号
  2. var result=arr.filter(value=>{
  3. return value >2;
  4. })
  5. console.log(result);//[3,4,5]

6、reduce (累加) reduce((initValue, currentValue, index,arr)=>{},设定初始值)

  1. initValue 初始化值 如果设置那第一个值就为初始值,如果不设置数组第一个值为初始值
  2. currentValue 当前值
  3. var arr2=[1,6,9,4,2];
  4. var result = arr2.reduce((initValue,currentValue)=>{
  5. console.log(initValue,currentValue);//1 6
  6. //undefined 9
  7. //undefined 4
  8. //undefined 2
  9. })
  10. console.log(result);//undefined

7、split() 把字符串转化为数组

  1. var str="Hello YYL";
  2. var res=str.split("");//以“ ”分割
  3. console.log(res);//["H","e","l","l"," ",....]

8、reverse(反转数组)

  1. var num=[1,2,3,4,5];
  2. var r=num.reverse();
  3. console.log(r);//[4,3,2,1,]

9、join 连接数组 可以把数组转换成字符串

  1. var String = num + "";
  2. var str1=num.join("*");
  3. console.log(str1);//5***4***3***2***1

10、链式调用 用点(.) 进行连接 str3.split(“”).reverse().join(“”);

  1. var str3="你好,李焕英";
  2. var str1=str3.split("").reverse().join("");//先转换成数组,再反转,再转换成字符串
  3. console.log(str1);//英焕李,好你