言简意赅,直接上货。

slice():该方法会返回一个新的数组,强调:新数组,并不会影响原来的数组。先来看看语法咋说:arrayObject.slice(start,end)。其中,start必需,end可选。

  start规定开始截取的位置。end规定结束的位置。

  • 只有start的时候,从start开始的位置开始截取到数组末尾元素。
<script type='text/javascript'>
  var arr = ['A', 'B', 'C', 'D', 'E'];
  var arr1 = arr.slice(2);
  console.log(arr1);//['C','D','E']
</script>
  • start为负数的时候,从数组末尾开始算起,也就是说,-1指的是数组的最后一个元素。-2指的是数组倒数第二个元素。以此类推。
<script type='text/javascript'>
  var arr = ['A', 'B', 'C', 'D', 'E'];
  var arr1 = arr.slice(-2);
  console.log(arr1);//['D','E']
</script>
  • end不包括在内,例如arr.slice[2,4],指的是从数组第2个元素开始截取,到第4个元素结束,不包括结束的第4个元素。如果end是负数,和start用法一样,也是从数组末尾开始截取。

splice():该方法向数组中添加/删除元素,然后返回被删除的元素。会改变原来的数组。强调:会改变原来的数组。先来看看语法咋说:arrayObject.splice(index,howmany,item1,.....,itemX),其中index,howmany必需,item1,......,itemX可选。

index规定添加/删除的位置。howmany规定要删除的数量。item1,......,itemX规定向数组中添加的元素。

  • howmany为0时,表示不删除元素。
  • item1,......,itemX可选可不选。
<script type='text/javascript'>
var arr = ['A', 'B', 'C', 'D', 'E'];
arr.splice(2,0,'New');
console.log(arr);//['A','B','New','C','D','E']
</script>

js中slice和splice的区别的更多相关文章

  1. JS数组slice()和splice()的区别

    以前还是纯小白的时候,总会搞混JS数组的 slice() 和 splice() 方法.因为这2个方法名字太像了,就差一个字母,语法也有类似之处.    现在久了没用,有时候也会忘记,所以做一个总结来区 ...

  2. js中slice、splice、substr、split方法

    1.slice 可用于数组与字符串,返回一个新的数组,原数组不改变,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素. 在string中 slice(start,e ...

  3. js中slice(),splice(),split(),substring(),substr()的使用方法和区别

    1.slice(): Array和String对象都有 在Array中  slice(i,[j]) i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个元素j为结束的索引值,缺省时则获取 ...

  4. 数组的常用方法concat,join,slice和splice的区别,map,foreach,reduce

    1.concat()和join() concat()是连对两个或两个数组的方法,直接可以将数组以参数的形式放入 join()是将数组中的所有元素放入一个字符串中,通俗点讲就是可以将数组转换成字符串 2 ...

  5. JS中isPrototypeOf 和hasOwnProperty 的区别 ------- js使用in和hasOwnProperty获取对象属性的区别

    JS中isPrototypeOf 和hasOwnProperty 的区别 1.isPrototypeOf isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的 ...

  6. (网页)Angular.js 中 copy 赋值与 = 赋值 区别

    转自st.gg Angular.js 中 copy 赋值与 = 赋值 区别 为什么用 $scope.user = $scope.master; $scope.master 会跟着 $scope.use ...

  7. js中的substr和substring区别

    js中的substr和substring区别 Substring: 该方法可以有一个参数也可以有两个参数. (1)  一个参数: 示例: var str=“Olive”: str.substring( ...

  8. JS 中的require 和 import 区别整理

    ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使 ...

  9. 浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂

    浅谈JS中的!=.== .!==.===的用法和区别   var num = 1;     var str = '1';     var test = 1;     test == num  //tr ...

随机推荐

  1. 3D echarts 点位报表展示

    一,准备工作1)获取Echarts 以下为官网推荐的几种获取 ECharts方式: 从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求,我们提供了不同打包的下载,如果你在体积上没有要求, ...

  2. 与 MySQL 因“CST” 时区协商误解导致时间差了13 小时

    CST 时区名为 CST 的时区是一个很混乱的时区,有四种含义: 美国中部时间 Central Standard Time (USA) UTC-05:00 / UTC-06:00 澳大利亚中部时间 C ...

  3. linux 安装 websocketd

    1.下载 wget https://github.com/joewalnes/websocketd/releases/download/v0.3.0/websocketd-0.3.0-linux_am ...

  4. Python笔记【2】_列表学习

    #!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #字符串:通常有单引号“'”.双引号“" ...

  5. 自己挖的坑跪着也要填完---mapper配置文件和java源文件在同一包下

    本来准备研究下mybatis源码执行流程的,就随意搭建了个项目,所有配置如下: 一切看似都是那么的正常,然而执行的时候:Exception in thread "main" org ...

  6. Vue技术点整理-Vue CLI安装详解

     一,脚手架安装 Node 版本要求 Vue CLI 需要 Node.js +).你可以使用 nvm 或 nvm-windows 在同一台电脑中管理多个 Node 版本. 1,全局安装Vue CLI ...

  7. Linux环境下虚拟环境virtualenv安装和使用(转)

    virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够: 1. 在没有权限的情况下安装新套件 2. 不同应用可以使用不同的套件版本 3. 套件升级不影响其他应用 ...

  8. S7-300CPU存储器介绍及存储卡使用

    1. S7 300存储区概述 S7-300 PLC的存储区可以划分为四个区域:装载存储器(Load Memory).工作存储器(Work Memory). 系统存储器(System Memory)和保 ...

  9. 阿里云域名的ssl证书申请与腾讯服务器域名的证书安装

    阿里云域名中的SSL证书申请,腾讯云服务器中的证书安装: 因为公司的与域名都在阿里云上面,服务器却用的是腾讯云的.记得前2年用阿里云管理平台的时候,域名的SSL证书都很好找,也许是长时间不用,找SSL ...

  10. zimg服务器图片数据迁移后,图片404异常的问题解决

    由于zimg特殊的图片存储结构及图片命名规则,其迁移数据应该当相当简单的,仅把对应的存储图片数据的文件夹复制即可.往往简单的东西总会有一些成本在里面,下面是我简单的迁移测试过程中遇到的一些问题,仅供参 ...