数组的增删改查

一.学习数组的拓展方法需要 注意两个地方

  1. 方法的返回值
  2. 是否改变原数组 (有的是直接改变原数组 有的是形成新的数组)

二.数组中 元素的 增删改查

  1. push()尾部删除
    push() 在数组尾部添加一个或多个元素
    返回值 新增元素后数组的长度
    是否改变原数组 改变
var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
console.log(list);
// list[list.length]
var result = list.push("x", "y", "z");  
console.log(result);
console.log(list);

2.unshift()头部增加
unshift() 在数组头部添加一个或多个元素
返回值 新增元素后数组的长度
是否改变原数组 改变

var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
console.log(list);
var result = list.unshift("x", "y", "z");
console.log(result);
console.log(list);

3.pop()尾部删除
pop() 删除数组尾部的元素
返回值 被删除的元素
是否改变原数组 改变

var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
console.log(list);

var result = list.pop();
console.log(result);
console.log(list);
  1. shift() 删除数组尾部的元素
    返回值 被删除的元素
    是否改变原数组 改变
var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
console.log(list);

var result = list.shift();
console.log(result);
console.log(list);

5.splice() 增删改

5.1 删除
splice(startIndex,n) 从下标为 startIndex的位置开始 删除n 个元素
返回值 被删除的元素 形成新的的数组
是否改变原数组 改变

    var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
    console.log(list);

    var result = list.splice(5, 2);

    console.log(result);
    console.log(list);

5.2 新增
splice(startIndex,0,item1,item2,item3 ... itemN)
从下标为 startIndex的位置开始 删除0 个元素,再增加一个或多个元素
返回值 []
是否改变原数组 改变

var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
console.log(list);

var result = list.splice(5, 0, "x", "y");

console.log(result);
console.log(list);

5.3 修改
splice(startIndex,n,item1,item2,item3 ... itemN)
从下标为 startIndex的位置开始 删除n 个元素,再增加一个或多个元素
返回值 被删除的元素 形成新的的数组
是否改变原数组 改变

var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
console.log(list);

var result = list.splice(5, 1, 50);

console.log(result);
console.log(list);
  1. slice()方法
    slice(startIndex,endIndex)
    [startIndex,endIndex) 数组的裁切 (将数组中的某一段 拿出来)
    startIndex 起始下标 startIndex默认为0
    endIndex 结束下标 endIndex 默认值是length

返回值 被裁切的元素形成的新数组
是否改变原数组 不改变

var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];
console.log(list);
// var result = list.slice(3, 6);

var result = list.slice();

console.log(result);
console.log(list);
  1. concat() 数组的拼接/合并 (如果参数是单个元素 直接拼接到新数组中去 如果参数是数组的话,会把数组的元素合并到新数组中)

返回值 拼接后形成的新数组
是否改变原数组 不改变

var list = [54, 68, 46, 75, 36, 20, 65, 11, 79, 45];   console.log(list);
var arr = ["a", "b", "c"];

 var result = list.concat("x", "y", arr);

 console.log(result);
 console.log(list);
  1. reverse() 数组的翻转/反转
    返回值 反转后的原数组
    是否改变原数组 改变
//=>  ["f","e","d","c","b","a"];
var list = ["a", "b", "c", "d", "e", "f"]; 
console.log(list);

var result = list.reverse();
console.log(result);
console.log(list);
  1. includes() 包含 判断数组中是否包含某个元素 包含返回 true 不包含返回 false
var list = ["a", "b", "c", "d", "e", "f"];

var result = list.includes("f1");
console.log(result);
console.log(list);
  1. indexOf() 包含 判断数组中是否包含某个元素 包含返回就返回该元素的下标 不包含返回 -1
var list = ["a", "b", "c", "d", "e", "f"];

var result = list.indexOf("f1");
console.log(result);
console.log(list);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.需求:获取数组中索引为1的那个数据 (查) 2.需求:将索引为1的数据修改为m (改) 3.需求:将索引为1的...
    乄Denve彡阅读 88评论 0 0
  • 需求: 编写方法实现以下功能。// 1、实现数组在指定位置插入元素// insert(int[] arr)// 2...
    张宇_c5d4阅读 246评论 0 0
  • 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 欢迎大家...
    小五丶_阅读 316评论 0 0
  • 一 这世上相恋的方式有很多种,可有一种恋爱叫爱而不得,忘却不能。 相恋的时候,只要相加最终等于100,那么你爱我多...
    何机灵阅读 1,655评论 0 4
  • 还是贪图了 盘中的珍馐 一囗生冷,而己 侥幸,笑着 敌不过年轮更替 腹部严厉的惩罚 比棍棒无情 不管眼角的泪 生生往外挤
    沣孜id阅读 217评论 8 7