一、数组的创建

1、var arrayObj = new Array(); //创建一个数组  
2、var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度

:创建数组指定了长度,但实际上所有情况下数组都是变长的,也就是说即使指定了长度为5,仍然可以将元素存储在规定长度以外的,注意:这时长度会随之改变
3、var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); 创建一个数组并赋值

// 字面量方式:
// 这个方法也是我们最常用的,在初始化数组的时候 相当方便
var a = [1, 2, 3];
// 构造器:
// 实际上 new Array === Array,加不加new 一点影响都没有。
var a = Array(); // []
var a = Array(3); // [undefined,undefined,undefined]
var a = Array(1,2,3); // [ 3,11,8 ]

二、数组元素的添加

1、push()

arrayObj. push([item1 [item2 [. . . [itemN ]]]]);// 将一个或多个新元素添加到数组结尾,并返回数组新长度

let a = [1,2,3];
let item = a.push('末尾'); // 4
console.log(a); // [1,2,3,'末尾']

2、unshift()

arrayObj.unshift([item1 [item2 [. . . [itemN ]]]]);// 将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度

let a = [1,2,3];
let item = a.unshift('开头'); // 4
console.log(a); // ['开头',1,2,3]

3、splice()

arrayObj.splice(insertPos,0,[item1[, item2[, . . . [,itemN]]]]);//将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。

三、数组的元素的访问

var testGetArrValue=arrayObj[1]; //获取数组的元素值  
arrayObj[1]= "这是新值"; //给数组元素赋予新的值

四、数组元素的删除

1、pop()

arrayObj.pop(); //移除最后一个元素并返回该元素值

let a = [1,2,3];
let item = a.pop(); // 3
console.log(a); // [1,2]

2、shift()

arrayObj.shift(); //移除最前一个元素并返回该元素值,数组中元素自动前移

let a = [1,2,3];
let item = a.shift(); // 1
console.log(a); // [2,3]

3、splice()

arrayObj.splice(deletePos,deleteCount); //删除从指定位置deletePos开始的指定数量deleteCount的元素,数组形式返回所移除的元素

语法: array.splice(index,howmany,item1,.....,itemX)

参数:

index:必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany:必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, …, itemX: 可选。向数组添加的新项目。
返回值: 如果有元素被删除,返回包含被删除项目的新数组。

(1)删除元素

let a = [1, 2, 3, 4, 5, 6, 7];
let item = a.splice(0, 3); // [1,2,3]
console.log(a); // [4,5,6,7]
// 从数组下标0开始,删除3个元素
let item = a.splice(-1, 3); // [7]
// 从最后一个元素开始删除3个元素,因为最后一个元素,所以只删除了7

(2)删除并添加

let a = [1, 2, 3, 4, 5, 6, 7];
let item = a.splice(0,3,'添加'); // [1,2,3]
console.log(a); // ['添加',4,5,6,7]
// 从数组下标0开始,删除3个元素,并添加元素'添加'let b = [1, 2, 3, 4, 5, 6, 7];
let item = b.splice(-2,3,'添加1','添加2'); // [6,7]
console.log(b); // [1,2,3,4,5,'添加1','添加2']
// 从数组最后第二个元素开始,删除3个元素,并添加两个元素'添加1'、'添加2'

(3)不删除只添加:

let a = [1, 2, 3, 4, 5, 6, 7];
let item = a.splice(0,0,'添加1','添加2'); // [] 没有删除元素,返回空数组
console.log(a); // ['添加1','添加2',1,2,3,4,5,6,7]
let b = [1, 2, 3, 4, 5, 6, 7];
let item = b.splice(-1,0,'添加1','添加2'); // [] 没有删除元素,返回空数组
console.log(b); // [1,2,3,4,5,6,'添加1','添加2',7] 在最后一个元素的前面添加两个元素

总结:

数组如果元素不够,会删除到最后一个元素为止
操作的元素,包括开始的那个元素
可以添加很多个元素
添加是在开始的元素前面添加的

(4)根据对象ID,删除对象中对象

//数据源
let list = [{id:0,name:'000'},{id:1,name:'111'},{id:2,name:'222'},{id:3,name:'333'}]//遍历删除
function deletArrItemFunc(list,deleteID){for(var i = 0;i<list.length;i++){if(list[i].id===deleteID){list.splice(i,1)}}return list
}//调用
var res = deletArrItemFunc(list,2)
console.log(res)

五、数组的截取和合并

1、slice()

arrayObj.slice(start, [end]); //以数组的形式返回数组的一部分,注意不包括 end 对应的元素,如果省略 end 将复制 start 之后的所有元素

2、concat()

arrayObj.concat([item1[, item2[, . . . [,itemN]]]]); //将多个数组(也可以是字符串,或者是数组和字符串的混合)连接为一个数组,返回连接好的新的数组

六、数组元素的排序

1、reverse()

arrayObj.reverse(); //反转元素(最前的排到最后、最后的排到最前),返回数组地址

let a = [1,2,3];
a.reverse();
console.log(a); // [3,2,1]

2、sort()

arrayObj.sort(); //对数组元素排序,返回数组地址

七、数组的拷贝

1、slice()

arrayObj.slice(0); //返回数组的拷贝数组,注意是一个新的数组,不是指向

2、concat()

arrayObj.concat(); //返回数组的拷贝数组,注意是一个新的数组,不是指向

可参考文章

https://www.jb51.net/article/141330.htm

JavaScript-数组及数组元素操作相关推荐

  1. JavaScript之表单元素操作

    获取radio的checked: 1 $("#radio")[0].checked;//true  or   false 本文转自 爱笑嘚蛋蛋 51CTO博客,原文链接:http: ...

  2. JavaScript中的数组操作

    在之前的一篇博客中提到了一些 JavaScript Array 对象的方法,比如 slice().splice().pop().push() 等,博客链接: http://xitongjiagoush ...

  3. 在JavaScript中找到数组的最小/最大元素

    如何轻松获得JavaScript数组的min或max元素? 伪代码示例: let array = [100, 0, 50]array.min() //=> 0 array.max() //=&g ...

  4. 前端:JS/20/数组(数组的概念,数组元素,数组索引,数组元素的访问,数组的长度,数组的创建方法,数组的操作,实例:使用数组保存个人信息,实例:求数组所有值的平均值,数组对象的length属性)

    数组 1,数组的概念 一组值(或对象)的集合,称为"数组": var arr =[10,20,30,50]; var arr =["张三","男&qu ...

  5. 【JavaScript基础-二维数组】JavaScript修改二维数组的某个元素时,其上下元素也受到影响

    JavaScript修改二维数组的某个元素时,其上下元素也受到影响 发布:2021年8月15日18:54:56 前言 在研究背包问题时,一开始往往会用二维数组的形式来描述,这样会便于理解.但是,我在操 ...

  6. javascript比较删除数组头元素的不同方法的效率

    javascript比较删除数组头元素的不同方法的效率 Array.prototype.shift() 删除并返回数组的第一个元素 我搜索的实现是,创建一个新数组,然后对从i=1开始,对新数组的i-1 ...

  7. JavaScript 删除数组中指定元素(5种方法)

    JavaScript 删除数组中指定元素 在 JavaScript 中,数组是一种常见的数据类型,可以存储多个元素.有时候,我们需要从数组中删除某些特定的元素.本文将介绍如何使用 JavaScript ...

  8. html中js定义数组,javascript数组的定义及操作实例

    数组是一组数据的集合,js中,数组里面的数据是可以 不同类型的 定义数组: 1.通过类实例化来创建数组 var alist01=new Array(1,2,3); 2.通过直接量的方式来创建数组 va ...

  9. B10_NumPy数组操作、修改数组形状、翻转数组、修改数组维度、连接数组、分割数组、数组元素的添加与删除

    NumPy数组操作 Numpy 中包含了一些函数用于处理数组,大概可分为以下几类: 修改数组形状 翻转数组 修改数组维度 连接数组 分割数组 数组元素的添加与删除 修改数组形状 函数 描述 resha ...

  10. php js动态删除数组元素,javascript如何删除数组中的指定元素

    js删除数组中的指定元素主要分为两步,首先判断数组中是否包含这个元素,然后再通过splice()方法来删除指定元素 本篇文章主要介绍的是如何通过javascript语言对数组中的指定元素进行删除的方法 ...

最新文章

  1. MySQL------Navicat安装与激活
  2. linux下Yum的$releasever和$basearch的取值
  3. [转载]poj 计算几何题全集(转)
  4. 一个AI设计的思考过程(旧文)
  5. 泰山行宫碧霞元君祠_临清市泰山行宫碧霞元君祠5月4号(农历三月三十日)举行大型泰山奶奶接驾法会...
  6. 项目alpha冲刺-总结
  7. Java案例:Swing摇奖器
  8. 拓端tecdat|R语言利用基线协变量提高随机对照试验的效率
  9. “双态IT”成就业务“互联网+”转型
  10. mac os下可能是最好的豆瓣电台——diumoo
  11. 使用lua脚本开发wow插件(魔兽世界插件开发)
  12. OD脱壳-再次载入-软件无法找到入口
  13. 数据清洗第六章—课后操作题
  14. 利用百度身份证识别服务和python语言实现身份证信息的提取和保存
  15. 建立个人的腾讯云服务器
  16. hr 0x800401f0 尚未调用 CoInitialize
  17. [日推荐]『TheGolfGame』一个高端大气上档次的小程序
  18. 树莓派4B入门及应用
  19. 深信服超融合基础架构管理平台--虚拟网络测试实践
  20. 你的福利是咋被百度云盘给和谐的

热门文章

  1. 用python自动登录博客园
  2. 城阳历史古迹·城子龙山文化遗址
  3. 如何在DNS中添加另一DNS
  4. NFT 泡沫是否已经被挤破
  5. 在使用 eclipse 时, eclipse 的右下角 一直在提示 “JPA java change event handler” ,eclipse使用起来很卡,解决办法
  6. csdn如何设置免费皮肤
  7. JAVA计算机毕业设计影视论坛Mybatis+源码+数据库+lw文档+系统+调试部署
  8. labelImg的使用(可简单明了)
  9. 南京邮电大学C语言实验报告三
  10. Cookie——设置cookie