工作了很久始终对这4个用法处于混淆状态,今天写个帖子来警示下自己

//            slice(start,end),从start值开始截取到end前的元素组成新的数组,不改变原数组
// slice(index)从index下标值开始截取,组成新的数组不改变原数组
var arr=[0,1,2,3,4,5,6];
var a=arr.slice(0,4);//0123
var b=arr.slice(3);//3456
console.log(a);//0123
console.log(b);//3456
console.log(arr);//0123456
// 当传入一个数值且为负数时length会与这个数值相加然后再截取,当该数值的绝对值大于length时会返回全部
// 当传入的值是一正一负时,此时的length不再是arr的length而是新数组的length,此时length同样与负数相加,再截取值
// 当传入的值时一正一副且第二个值的绝对值大于或等于length的个数则返回空数组
var c=arr.slice(-5);
console.log(c);//23456
var d=arr.slice(-8);
console.log(d)//0123456
var e=arr.slice(2,-2);
console.log(e);//234
var f=arr.slice(2,-5);
console.log(f);//空值
var arr1=[0,1,2,3,4,5,6];
// splice(index,length,item1,item2)从第index开始选择length个元素进行删除,item1,item2放入删除的位置
// 改变了原数组使原数组一目前的方法进行排列,操作过后的值为删除掉的值
var g=arr1.splice(2,2,8,8);
console.log(g)//23
console.log(arr1);//0188456
// split(separator,limit) 不改变原数组组成新的字符串,以separator分割字符串对目前字符串取limit个组成新的数组
var str="abc丰城市123";
var h=str.split("市",2);
console.log(h);
console.log(str);
var arr2=[0,1,2];
// unshift(item1,item2,...),unshift向原数组开头进行追加元素,改变原数组
var i=arr2.unshift(3,4,"丰城市");
console.log(i);//6 得到的是数组arr2新追加后的length
console.log(arr2);//原数组已改变,改变为新追加后的数组

slice,splice,split,unshift的用法的更多相关文章

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

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

  2. JS中slice,splice,split的区别

    不知道大家对slice,splice,splite是肿么样的感觉,反正我刚接触到这三个函数的时候整个人都懵了,因为一个个长的跟孪生兄弟似的,每次用的时候都会混,于是决定记下来,也给大家当个参考吧. s ...

  3. 区分slice,splice,split

    原文:https://www.cnblogs.com/webjoker/p/5218114.html 1.slice(数组) 用法:array.slice(start,end) 解释:该方法是对数组进 ...

  4. javascript篇-slice(),splice(),split(),substring(),substr()的用法以及区别

    1.slice(),从已经有的数组中返回选定的元素, 使用范围是:Array,string 语法:obj.slice(start,end) 参数: start: 必需.规定从数组(字符串)的哪个ind ...

  5. javascript的slice(),splice(),split(),substring(),substr()

    例子摘抄于http://www.w3school.com.cn/jsref/jsref_obj_array.asp 1.slice(): Array和String对象都有 在Array中  slice ...

  6. javascript中slice(),splice(),split(),substring(),substr()使用方法

    因为本人在使用这些方法时常有混淆,特总结如下: 1.slice(): Array和String对象都有 在Array中  slice(i,[j]) i为开始截取的索引值,负数代表从末尾算起的索引值,- ...

  7. 区分slice,splice和split方法

    1.slice(数组) 用法:array.slice(start,end) 解释:该方法是对数组进行部分截取,并返回一个数组副本:参数start是截取的开始数组索引,end参数等于你要取的最后一个字符 ...

  8. javascript中不易分清的slice,splice和split三个函数

    1.slice(数组) 用法:array.slice(start,end) 解释:该方法是对数组进行部分截取,并返回一个数组副本:参数start是截取的开始数组索引,end参数等于你要取的最后一个字符 ...

  9. js中slice,splice和split方法的区别

    1.slice(数组) 用法:array.slice(start,end) 解释:该方法是对数组进行部分截取,并返回一个数组副本:参数start是截取的开始数组索引,end参数等于你要取的最后一个字符 ...

随机推荐

  1. PyQt学习随笔:ListView控件删除一项列表项的方法

    ListView控件可以通过控件对应数据存储删除列表项,具体使用: 数据存储.removeRow(元素索引位置) 删除指定位置的一个列表项. 数据存储如果不知道程序定义的数据存储名,可以通过model ...

  2. js2py 的用法

    python调用js的方法 js2py的简单用法 import js2py js = """ function add(a, b) { return a + b } &q ...

  3. Djang项目部署之sqlite版本升级

    项目环境: centos7 django 2.2.10 问题描述: 使用了django 2.2.12版本开发项目,此版本对应的sqlite需要升级为3.8.0以上. 百度了不少解决方案,缺点:过程繁琐 ...

  4. UOJ80 二分图最大权匹配

    草,学了一下午假板子,sb博客害人 题目大意: 一个教室有\(n\)个男生和\(m\)个女生,某些男女之间愿意早恋(雾),其早恋好感度为\(w_i\),问怎样让男女配对使得班里好感度之和最大 \(n\ ...

  5. 【复习笔记】重习 AC 自动机

    发现已经忘了许多....于是复习一下 基础要点概况 AC 自动机基于 Trie 树 的结构,即构建 AC 自动机前需要先建 Trie. 一个状态中除了转移 \(\delta\) 之外还有失配指针 \( ...

  6. 题解-Railgun

    题面 Railgun \(T\) 组测试数据,每次给定 \(n,k\),求(\(F(i)\) 为斐波那契数列第 \(i\) 项): \[\sum_{1\le x_i\le n(1\le i\le k) ...

  7. SSM框架中常用的注解及含义

    @Controller---使用它标记在一个类上,dispatcher会扫描使用该注解类的方法,并检测该方法是否使用了@RequestMapping注解,加上RequestMapping注解的方法才是 ...

  8. window启动mongoDB

    windows启动mongo服务 建议使用docker,方便又快捷,可以查看我的其他文章有介绍 创建好日志文件夹后执行以下命令 mongod.exe --logpath "C:\mongod ...

  9. centos安装scrapy

    安装scrapy centos 7 安装scrapy报错说找不到scrapy需要的Twisted13.0以上版本? Collecting Twisted>=13.1.0 (from Scrapy ...

  10. Spring Session解决Session共享

    1. 分布式Session共享   在分布式集群部署环境下,使用Session存储用户信息,往往出现Session不能共享问题.   例如:服务集群部署后,分为服务A和服务B,当用户登录时负载到服务A ...