通过实例了解JavaScript数组方法slice()的使用方法


本文摘自PHP中文网,作者青灯夜游,侵删。

下面本篇文章给大家通过实例分析一下JavaScript中数组方法slice()的使用方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

相关推荐:《javascript视频教程》

slice()方法介绍

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

一个参数:slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。

两个参数:该方法返回起始和结束位置之间的项(但不包括结束位置的项)。

slice不会影响原始数组。

结束位置小于起始位置,返回空数组。

可以接受负数,用数组长度加上该负数来确定相应位置。

实例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

var arr = [1, 2, 3, 'a', 'b', 'c', 'd'];

Array.prototype.copySlice =function() {

  var newArr = [];

  var len = this.length;

  var argLen = arguments.length;

  if(arguments.length == 1) {//一个参数

    var startNum = arguments[0] > 0 ? arguments[0] : (len + arguments[0]);

    for(var i = startNum; i < len; i++) {

      newArr.push(arr[i]);

    }

  }

  else if(arguments.length == 2) {//两个参数

    var startNum = arguments[0] > 0 ? arguments[0] : (len + arguments[0]);

    var endNum = arguments[1] > 0 ? arguments[1] : (len + arguments[1]);

    if(startNum >= endNum) {//起始索引大于终止索引,返回[]

      return newArr;

    }

    else {

      for(var i = startNum; i < endNum; i++) {

        newArr.push(arr[i]);

      }

    }

  }

  return newArr;

};

console.log(arr.length); // 7

// 一个参数

console.log(arr.copySlice(2)); // [3, "a", "b", "c", "d"]

// 两个参数

console.log(arr.copySlice(3, 6));  //["a", "b", "c"]

console.log(arr);  //[1, 2, 3, "a", "b", "c", "d"]

// 接收负数

console.log(arr.copySlice(-2)); // ["c", "d"]

console.log(arr.copySlice(-5, 6)); //[3, "a", "b", "c"]

//结束位置小于起始位置,返回空数组。

console.log(arr.copySlice(-5, -6)); //[]

console.log(arr.copySlice(5, 5)); //[]

console.log(arr.copySlice(5, )); // ["c", "d"]

部分运行结果如图:

2.png

更多编程相关知识,请访问:编程入门!!

以上就是通过实例了解JavaScript数组方法slice()的使用方法的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

javascript创建对象的方法有哪些

十五条 javascript 编程技巧

浅谈javascript中数组array的添加/删除操作

如何给js创建一个数组对象

javascript怎么修改html内容

js怎么跳转到指定页面?

浅谈javascript执行机制

javascript怎么获取请求参数

javascript在页面增加元素

javascript数组如何删除相同元素

更多相关阅读请进入《javascript》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...