浅谈js数组和splice的用法
作者:jingxian 发布时间:2023-08-23 00:19:42
首先添加一个splice函数:
splice:该方法的作用就是从数组中删除一个元素
array.splice(index,count,value....);
index:表示从哪一个下标开始,
count:表示删除元素的个数
value:代表增加的元素
example:
1.var array = new Array(1,2,3,4,5,6);
array.splice(0,1,2)
result:2,2,3,4,5
2.var array = new Array(1,2,3,4,5,6);
array.splice(0,0,2)
result:2,1,2,3,4,5
3.var array = new Array(1,2,3,4,5,6);
array.splice(0,0,2,3,4)
2,3,4,1,2,3,4,5,6
1、数组的创建
var arr = new Array(); arr[0] = "aaa";arr[1] = "bbb";arr[2] = "ccc";
var a = [1,2,3,4,5];
var c = new Array("first", "second", "third");
或者数组直接量:
var d = ["first", "second", "third"];
var arrayObj = new Array();//创建一个数组
var arrayObj = new Array([size]);//创建一个数组并指定长度,注意不是上限,是长度
var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]);//创建一个数组并赋值
要说明的是,虽然第二种方法创建数组指定了长度,但实际上所有情况下数组都是变长的,也就是说即使指定了长度为5,仍然可以将元素存储在规定长度以外的,注意:这时长度会随之改变。
2、数组的元素的访问
var testGetArrValue=arrayObj[1]; //获取数组的元素值
arrayObj[1]= "这是新值"; //给数组元素赋予新的值
3、数组元素的添加
arrayObj. push([item1 [item2 [. . . [itemN ]]]]);// 将一个或多个新元素添加到数组结尾,并返回数组新长度
arrayObj.unshift([item1 [item2 [. . [itemN ]]]]);// 将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度
arrayObj.splice(insertPos,0,[item1[, item2[, . . . [,itemN]]]]);//将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。
4、数组元素的删除
var a = new Array("first", "second", "third") ; delete a[1] ; document.write(a.length) //显示的结果是3,说明即使删除也无法改变数组的长度
arrayObj.pop(); //移除最后一个元素并返回该元素值
arrayObj.shift(); //移除最前一个元素并返回该元素值,数组中元素自动前移
arrayObj.splice(deletePos,deleteCount); //删除从指定位置deletePos开始的指定数量deleteCount的元素,数组形式返回所移除的元素
5、数组的截取和合并
arrayObj.slice(start, [end]); //以数组的形式返回数组的一部分,注意不包括 end 对应的元素,如果省略 end 将复制 start 之后的所有元素
arrayObj.concat([item1[, item2[, . . . [,itemN]]]]); //将多个数组(也可以是字符串,或者是数组和字符串的混合)连接为一个数组,返回连接好的新的数组
6、数组的拷贝
arrayObj.slice(0); //返回数组的拷贝数组,注意是一个新的数组,不是指向
arrayObj.concat(); //返回数组的拷贝数组,注意是一个新的数组,不是指向
7、数组元素的排序
arrayObj.reverse(); //反转元素(最前的排到最后、最后的排到最前),返回数组地址
arrayObj.sort(); //对数组元素排序,返回数组地址
8、数组元素的字符串化
arrayObj.join(separator); //返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 隔开。
toLocaleString 、toString 、valueOf:可以看作是join的特殊用法,不常用


猜你喜欢
- 异常描述有时我们的Excel有一个调整过自定义格式的日期字段:当我们用pandas读取时却是这样的效果:不管如何指定参数都无效。出现原因没有
- 前言哈喽!哈喽。栗子上线啦~要说什么游戏能够获得大家的喜爱?唯射击游戏莫属。此前大火手游的《刺激战场》当然现在是叫做《和平精英》啦,想当初我
- 我们先来看下秒杀活动页面代码<!DOCTYPE HTML><html> <head> <
- 下面就是今天下午的研究成果。发布系统需要响应用户的中断请求,需要在GET方法中杀掉由subprocess派生的子进程,刚开始直接用os.ki
- 1.必需的参数:必须参数须以正确的顺序传入函数,调用的数量必须和声明时的一样def f(name,age):print('I am
- 我写代码一直是这个风格,废话不多,直接给大家贴代码,现在还是老规矩,具体代码如下所示:using System;using System.C
- 1.需要导的包import pymysql2.# mysql连接信息(字典形式)db_config ={ 'host': &
- 在win10环境下搭建python3.5.2和tensorflow平台,供大家参考,具体内容如下操作步骤如下:1、官网(https://ww
- 最近一直在研究python+selenium+beautifulsoup的爬虫,但是存入数据库还有写入txt文件里面的时候一直都是unico
- 整理文档,搜刮出Node.js查找当前目录下文件夹实例代码,稍微整理精简一下做下分享。var http = require("ht
- 扩展插件我下载的本版自带 pip下载工具cmd-pip下载插件pip install HTMLParser如果提示版本问题,更新PIP别用开
- 引言算法思路假设我们有这样一个生物族群,他们的每个基因片段都是一个个三角形(即只含三个点和颜色信息),他们每个个体表现出的性状就是若干个三角
- 基本示例?计算属性允许我们声明性地计算衍生值。然而在有些情况下,我们需要在状态变化时执行一些“副作用&rdquo
- 1 查看当前的device输入情况:import torchprint("Default Device : {}".fo
- 在推广Web标准的今天,那些崇尚Web标准的人经常说XHTML比HTML更加严格,当然从某种意义上说是的,比如它要求所有的标签关闭并且所有的
- 在本文中,我将说明如何用SQL Server的工具来优化数据库索引的使用,本文还涉及到有关索引的一般性知识。 关于索引的常识 影响到数据
- vue3给数组赋值丢失响应式的解决由于vue3使用proxy,对于对象和数组都不能直接整个赋值。只有push或者根据索引遍历赋值才可以保留r
- 本文实例讲述了Python 多线程,threading模块,创建子线程的两种方式。分享给大家供大家参考,具体如下:GIL(全局解释器锁)是C
- 前言本文主要给大家介绍了关于python中用Future对象回调别的函数的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的
- 蓝色混迹多年,偷师学艺不少,这次花了2天时间写了点东西发出来送给需要的吧。先放个图片,我改下代码。 重构完成 IE 6