当前位置:首页 > JavaScript

js实现列表

2026-02-28 18:18:47JavaScript

使用数组创建列表

在JavaScript中,数组是最常用的列表实现方式。可以通过字面量或构造函数创建:

// 字面量方式
const list1 = [1, 2, 3, 'a', 'b'];

// 构造函数方式
const list2 = new Array(1, 2, 3);

数组提供多种操作方法:

  • push() 添加元素到末尾
  • pop() 移除末尾元素
  • shift() 移除首元素
  • unshift() 添加元素到开头
  • splice() 在指定位置添加/删除元素

链表数据结构实现

对于需要频繁插入/删除的场景,可以手动实现链表:

class ListNode {
  constructor(value) {
    this.value = value;
    this.next = null;
  }
}

class LinkedList {
  constructor() {
    this.head = null;
    this.size = 0;
  }

  add(value) {
    const node = new ListNode(value);
    if (!this.head) {
      this.head = node;
    } else {
      let current = this.head;
      while (current.next) {
        current = current.next;
      }
      current.next = node;
    }
    this.size++;
  }
}

使用Map/Set实现特殊列表

当需要唯一值或键值对结构时:

// Set实现值唯一的列表
const uniqueList = new Set();
uniqueList.add(1);
uniqueList.add(2);
uniqueList.add(1); // 不会被重复添加

// Map实现键值列表
const kvList = new Map();
kvList.set('key1', 'value1');
kvList.set('key2', 'value2');

使用生成器实现惰性列表

对于大数据量的懒加载场景:

js实现列表

function* generateList() {
  let i = 0;
  while (true) {
    yield i++;
    if (i > 10000) break;
  }
}

const lazyList = generateList();
console.log(lazyList.next().value); // 0
console.log(lazyList.next().value); // 1

性能优化建议

  • 大数据量查询优先考虑数组
  • 频繁插入删除考虑链表结构
  • 需要唯一性使用Set
  • 现代JavaScript引擎对数组优化极好,多数场景应优先使用原生数组

标签: 列表js
分享给朋友:

相关文章

js分组实现

js分组实现

分组实现方法 在JavaScript中,可以通过多种方式实现数组或对象的分组操作。以下是几种常见的方法: 使用Array.prototype.reduce() 通过reduce方法可以轻松实现数组分…

js实现点击显示和隐藏

js实现点击显示和隐藏

实现点击显示和隐藏的JavaScript方法 使用classList.toggle切换类名 通过添加/移除CSS类控制元素的显示与隐藏,需提前在CSS中定义隐藏样式(如display: none)。…

js类实现

js类实现

使用类实现 JavaScript 功能 在 JavaScript 中,类(Class)是一种语法糖,基于原型继承机制。通过 class 关键字可以更直观地定义对象模板。 基本类定义 class…

js实现吸色

js实现吸色

使用Canvas实现吸色功能 通过Canvas的getImageData方法获取像素颜色数据。创建一个Canvas元素,将目标图像绘制到Canvas上,通过鼠标事件获取坐标对应的颜色值。 c…

js 实现跳转

js 实现跳转

使用 window.location.href 进行跳转 通过修改 window.location.href 可以跳转到指定 URL,浏览器会加载新页面: window.location.hre…

js实现显示隐藏

js实现显示隐藏

显示隐藏的实现方法 在JavaScript中,实现元素的显示和隐藏可以通过多种方式完成。以下是几种常见的方法: 修改CSS的display属性 通过改变元素的display属性可以在none(隐藏)…