JavaScript数组常用方法

小鱼儿 2021-11-17 12:48 542阅读 0赞

文章目录

    1. 数据:取用与插入
  • 1.“瑞士军刀”:splice
  • 2.亦可用于字符串:slice
  • 3.连接:concat
  • 4.查找索引:indexOf
  • 5.查找单个元素:find
  • 6.过滤多个元素:filter
  • 7.映射元素内容:map
  • 8.排序:sort
  • 9.翻转:reverse
  • 10.字符串<==>数组:split,join
  • 11.求和相关:reduce
  • 12.判断是否是数组:isArray

0. 数据:取用与插入

push:尾部插入,pop:尾部取出,shift:头部取出,unshift:头部添加

1.“瑞士军刀”:splice

可替换,删除,增加

  1. let arr=['jack','kitty','jerry'];
  2. delete arr[1];
  3. console.log(arr);/* [ 'jack', <1 empty item>, 'jerry' ] */
  4. console.log(arr.length);/* 3 */
  5. arr.splice(1,1);
  6. console.log(arr);/* 改变了 */
  7. arr.splice(0,2,'-');
  8. console.log(arr);
  9. arr.splice(1,0,'*');
  10. console.log(arr);
  11. arr.splice(-2,0,3,4);
  12. console.log(arr);

2.亦可用于字符串:slice

  1. let str="test";
  2. let arr=["t","e","s","t"];
  3. console.log(str.slice(1,3));
  4. console.log(arr.slice(1,3));
  5. console.log(str.slice(-2));
  6. console.log(arr.slice(-2));
  7. console.log(str);/* 并未改变 */
  8. console.log(arr);

3.连接:concat

  1. let arr=[1,2];
  2. console.log(arr.concat([3,4]));
  3. console.log(arr);/* 并未改变 */
  4. console.log(arr.concat([5,6],[7,8]));
  5. console.log(arr);
  6. console.log(arr.concat([9],10));
  7. console.log(arr);

4.查找索引:indexOf

  1. let arr=[1,0,false];
  2. console.log(arr.indexOf(0));
  3. console.log(arr.indexOf(false));
  4. console.log(arr.indexOf(null));
  5. console.log(arr.includes(1));

5.查找单个元素:find

  1. let users=[
  2. { id:1,name:"john"},
  3. { id:2,name:"pete"},
  4. { id:3,name:"mary"}
  5. ];
  6. let user=users.find(item=>item.id==1);
  7. console.log(user.name);

6.过滤多个元素:filter

  1. let users=[
  2. { id:1,name:"john"},
  3. { id:2,name:"pete"},
  4. { id:3,name:"mary"}
  5. ];
  6. let user=users.filter(item=>item.id<3);
  7. console.log(user);

7.映射元素内容:map

  1. let lengths=["dd","ghj","gga"].map(item=>item.length);
  2. console.log(lengths);

8.排序:sort

  1. let arr=[1,5,3,55,4];
  2. arr.sort();
  3. console.log(arr);

9.翻转:reverse

  1. let arr=[1,5,3,55,4];
  2. arr.reverse();
  3. console.log(arr);

10.字符串<==>数组:split,join

  1. /* 字符串转数组 */
  2. let names='bidd,da,hs';
  3. let arr=names.split(',');
  4. for(let name of arr){
  5. console.log(`A message to ${ name}.`);
  6. }
  7. /* 数组转字符串 */
  8. let str=arr.join(';')
  9. console.log(str);

11.求和相关:reduce

  1. /* 数组元素和加上当前值 */
  2. let arr=[1,2,3,4,5];
  3. let result=arr.reduce((sum,current)=>sum+current,5);
  4. console.log(result);

12.判断是否是数组:isArray

  1. console.log(typeof{ });
  2. console.log(typeof[]);
  3. console.log(Array.isArray({ }));
  4. console.log(Array.isArray([]));

发表评论

表情:
评论列表 (有 0 条评论,542人围观)

还没有评论,来说两句吧...

相关阅读

    相关 数组方法

    前言 我平时都是需要用到数组时再去搜方法,没想到面试中好几次都被问到对数组的一些操作,所以每次都黑人问号,基本只记得什么pop/push/shift,就想着找点资料好好总