欢迎光临散文网 会员登陆 & 注册

千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip

2023-07-18 12:08 作者:儁桀啊  | 我要投稿

 1.栈方法(后进先出)

  push() 可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度,改变原数组

  var arr = ['apple', 'banana', 'pear', 'orange']; //arr:数组对象,实例对象    Array:构造函数(类)

  console.log(arr.push('zhangsan', 'lisi', 'wangwu'));//7

  console.log(arr);//['apple', 'banana', 'pear', 'orange', 'zhangsan', 'lisi', 'wangwu']


  案例:创建一个长度为100的数组,里面是从2开始的偶数。

  var arr = [];

  for (var i = 1; i <= 100; i++) {//i:1,2,3,4,5

    arr.push(i * 2);

  }

  console.log(arr);


  pop() 从数组末尾移除最后一项,减少数组的length值,然后返回移除的项,改变原数组


  var arr = ['apple', 'banana', 'pear', 'orange'];

  console.log(arr.pop());//orange

  arr.pop();

  arr.pop();

  arr.pop();

  console.log(arr);


  案例:清空数组(注意arr.length是动态获取,pop改变原数组)

  var arr = ['apple', 'banana', 'pear', 'orange', 'zhangsan', 'lisi', 'wangwu', 'zhanliu'];

  for (var i = 0, len = arr.length; i < len; i++) {//arr.length动态获取数组的长度,但是pop方法删除一项,改变原数组

    arr.pop();

  }

  console.log(arr);



  2.队列方法

  unshift()可以接收任意数量的参数,把它们逐个添加到数组前面,并返回修改后数组的长度,改变原数组

  var arr = ['apple', 'banana', 'pear', 'orange'];

  console.log(arr.unshift('a', 'b', 'c'));//7

  console.log(arr);//['a', 'b', 'c','apple', 'banana', 'pear', 'orange']


  shift() 从数组前面移除一项,减少数组的length值,然后返回移除的项,改变原数组

  var arr = ['a', 'b', 'c', 'apple', 'banana', 'pear', 'orange'];

  console.log(arr.shift());//a

  console.log(arr);//['b', 'c', 'apple', 'banana', 'pear', 'orange']

1.concat() 方可以基于当前数组中的所有项创建一个新数组,参数可以是数组项或者数组。

  var arr = ['zhangsan', 'lisi'];

  var newArr = arr.concat('wangwu', 'zhaoliu');

  console.log(arr);//['zhangsan', 'lisi']

  console.log(newArr);//基于当前原数组,生成新数组['zhangsan', 'lisi', 'wangwu', 'zhaoliu']


  var arr = ['a', 'b', 'c'];

  var newArr = arr.concat('d', 'e', arr, arr);

  console.log(newArr);//['a', 'b', 'c','d', 'e','a', 'b', 'c','a', 'b', 'c']

  console.log(arr);//['a', 'b', 'c']  不改变原数组



  2.slice() 方法它能够基于当前数组中的一或多项创建一个新数组, 可以接受一或两个参数,即要返回项的起始和结束位置,不包括结束位置。

  var arr = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];

  var newArr = arr.slice(2, 4); //起始索引和结束的索引,不包括结束的索引位置

  console.log(newArr);//['c','d']

  console.log(arr.slice(2));//从索引2位置开始截取,直到最后的。 ['c', 'd', 'e', 'f', 'g']

  console.log(arr.slice());//全部截取,['a', 'b', 'c', 'd', 'e', 'f', 'g']


  了解如果参数是负数,表示从后往前数,-1开始

  截取一定是从前往后进行截取,数起始位置和结束位置的时候,从后往前数。

  console.log(arr.slice(-5, -2));//[ 'c', 'd', 'e']

  console.log(arr.slice(-100, -500));//[]


  3.splice() 方法对数组进行删除、插入、替换,是最强大的数组方法,返回值是数组,改变原数组。

  var arr = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];

  3.1.删除,第一个参数表示删除的起始索引位置,第二个参数表示删除数组项的长度。

  console.log(arr.splice(2, 3));//['c', 'd', 'e']  返回被删除的项

  console.log(arr);//['a', 'b','f', 'g']


  3.2.插入,根据删除演变而来的

  参1:删除的起始索引位置

  参2:表示删除数组项的长度

  从参数3开始,就是添加的数组项,将数组项添加到第一个参数的位置。


  var arr = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];

  console.log(arr.splice(2, 0, 'hello', 'hi'));//[] 返回被删除的项

  console.log(arr);//['a', 'b', 'hello', 'hi', 'c', 'd', 'e', 'f', 'g']


  3.3.替换,根据删除演变而来的,删除几项,插入几项。

  var arr = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];

  console.log(arr.splice(2, 3, 'hehe', 'xixi', 'haha'));//['c', 'd', 'e']

  console.log(arr);// ['a', 'b','hehe', 'xixi', 'haha', 'f', 'g'];


千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip的评论 (共 条)

分享到微博请遵守国家法律