专栏首页前端鼓励师JavaScript 数据结构与算法(二)数组结构

JavaScript 数据结构与算法(二)数组结构

JavaScript 数据结构与算法(二)数组结构

几乎所有的编程语言都原生支持数组类型,因为数组是最简单的内存数据结构。数组通常情况下用于存储一系列同一种数据类型的值。但在 JavaScript 里,数组中可以保存不同类型的值。但我们还是要遵守最佳实践,别这么做(大多数语言都没这个能力)。

创建和初始化数组

new Array()

const daysOfWeek = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday','Thursday', 'Friday', 'Saturday');

[]

const daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];

数组常见操作

添加元素

添加一个元素到数组的最后位置 array.push(item)

在数组首位插入一个元素 array.unshift(item)

在指定索引位置插入元素 array.splice(index, 0, item)

splice() 第二个参数为 0 时,表示插入数据。

let myArray = [1, 2, 3];
// 在 索引 0 的位置,插入 A
myArray.splice(0, 0, "A");
console.log(myArray); //--> ['A', 1, 2, 3]

删除元素

删除数组最后的元素 array.pop(item)

删除数组首位的元素 array.shift(item)

删除指定索引位置的元素 array.splice(start, number)例如:

let myArray2 = [1, 2, 3, 4, 5];
// 删除索引 4 位置起,2 个元素
myArray2.splice(4, 2);
console.log(myArray2); //--> [1, 2, 3]

修改元素

修改指定索引位置的元素 array.splice(index, 1, item)

let myArray3 = [1, 2, 3, 4, 5, 6];
// 修改 索引 1 的位置的元素为 AA
myArray2.splice(1, 1, "AA");
console.log(myArray3); //--> [1, "AA", 3, 4, 5, 6]

修改指定索引位置的几个元素 array.splice(index, number, item)

let myArray4 = [1, 2, 3, 4, 5, 6, 7];
// 在 索引 2 的位置起,修改两个元素为 AA BB
myArray2.splice(2, 2, "AA", "BB");
console.log(myArray3); //--> [1, 2, "AA", "BB", 5, 6, 7]

专辑:

JavaScript 数据结构与算法(一)前言

本文分享自微信公众号 - 前端鼓励师(FE-Cheerleaders),作者:XPoet

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-03-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 数据结构与算法(二)数组

    在堆中连续开辟的一段空间,每个元素占有相同大小的空间。一经开辟,即固定大小,无法改变长短。

    老沙
  • 数据结构与算法 -数组

    数组它是线性表的推广,其每个元素由一个值和一 组下标组成,其中下标个数称为数组的维数。

    越陌度阡
  • 数据结构与算法-数组

    cwl_java
  • 数据结构与算法(二)

    排序与搜索 排序算法(英语:Sorting algorithm)是一种能将一串数据依照特定顺序进行排列的一种算法。 排序算法的稳定性 稳定性:稳定排序算法会让原...

    酱紫安
  • 数据结构与算法(二)

    上篇文章介绍了两种数据结构,数组与集合,集合与数组特性基本相同,不同的是集合中的元素是不能相同的.所以在执行插入的时候,集合比数组多了一步"查重"的操作,这是一...

    LittleU
  • 数据结构与算法(二)

    上篇文章介绍了两种数据结构,数组与集合,集合与数组特性基本相同,不同的是集合中的元素是不能相同的.所以在执行插入的时候,集合比数组多了一步"查重"的操作,这是一...

    LittleU
  • JavaScript数据结构与算法-Sort

    这个方法需要 (n + 1 + n + 1) = 2n + 2 次运算。 我们把 算法需要执行的运算次数 用 输入大小n 的函数 表示,即 T(n) 。

    FinGet
  • JavaScript数据结构与算法-String

    思路:数字变字符串再变数组,这个主要就是运用的数组的常用api了,pop、shift、 unshift、join。

    FinGet
  • JavaScript数据结构与算法-Array

    例如:1 ^ 1 = 0 、 2 ^ 2 = 0、 0 ^ 1 = 1 、1 ^ 1 ^ 2 ^ 3 ^ 2 ^ 4 ^ 3 = 4

    FinGet
  • 数据结构与算法--数组(Array)

    "数据结构与算法"不管是在Java还是在任何语言中都是核心基础知识,就像是盖楼的地基一样,它被广泛的应用于架构的最底层,对于这部分知识的掌握程度能够决定...

    浩说编程
  • Java数据结构和算法(二)——数组

      上篇博客我们简单介绍了数据结构和算法的概念,对此模糊很正常,后面会慢慢通过具体的实例来介绍。本篇博客我们介绍数据结构的鼻祖——数组,可以说数组几乎能表示一切...

    IT可乐
  • 20120919-二叉树 数据结构《数据结构与算法分析》

    又是一次的毕业季,羡慕嫉妒啊.... 二叉查找树类的框架: 1 template <typename Comparable> 2 class BinaryS...

    用户1154259
  • 数据结构与算法——稀疏数组

    当一个数组(包括多维数组)中的大部分元素为0或者为同一个数值的数组时,为了节约空间起到压缩的效果,将数据用另一种结构来表示,即稀疏数组。

    C you again 的博客
  • 数据结构与算法-二叉树(二)

    二叉查找树是一种特殊的二叉树,它支持动态的数据集合的快速插入、删除和查找操作。二叉查找树的一般结构如下图所示:

    用户3470542
  • JavaScript 数据结构与算法(一)前言

    例如:一个庞大的图书馆中存放了大量的书籍,我们不仅仅要把书放进入,还应该在合适的时候能够取出来。

    XPoet
  • 数据结构与算法 - 线性结构

    首先,这篇文章不是讲解数据结构的文章,而是结合现实的场景帮助大家 理解和复习数据结构与算法 。

    皮小蛋
  • 算法与数据结构(二):队列

    队列也是一种线性的数据结构,它与链表的区别在于链表可以在任意位置进行插入删除操作,而队列只能在一端进行插入,另一端进行删除。它对应于现实世界中的排队模型。队列有...

    Masimaro
  • 算法与数据结构(二):链表

    上一篇简单的开了一个头,简单介绍了一下所谓的时间复杂度与空间复杂度,从这篇开始将陆陆续续写一下常用的数据结构:链表、队列、栈、树等等。 链表当初是我在学校...

    Masimaro
  • 数据结构与算法 -二叉树

    二叉树在树结构的应用中起着非常重要的作用,因为二叉树有许多良好的性质和简单的物理表示,而任何树都可以与二叉树相互转换,这样就解决了树的存储结构及其运算中存在的复...

    越陌度阡

扫码关注云+社区

领取腾讯云代金券