MST

星途 面试题库

面试题:JavaScript中数组常用方法性能测试场景构建

假设你要对JavaScript数组的`push`、`unshift`和`splice`方法进行性能测试,请描述测试的基本思路,并使用代码示例展示如何使用`console.time()`和`console.timeEnd()`对这几个方法在添加大量元素时的执行时间进行测量。
13.3万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试

测试基本思路

  1. 初始化一个空数组。
  2. 准备要添加的大量元素数据集合。
  3. 分别使用pushunshiftsplice方法添加这些元素,在操作前后使用console.time()console.timeEnd()记录时间,从而得到每个方法执行所需的时间,以此来对比性能。

代码示例

// 初始化空数组
let arr = [];
// 准备大量元素
let numElements = 10000;
let elementsToAdd = Array.from({ length: numElements }, (_, i) => i + 1);

// 测试push方法
console.time('push');
elementsToAdd.forEach(element => {
    arr.push(element);
});
console.timeEnd('push');

// 重置数组
arr = [];

// 测试unshift方法
console.time('unshift');
elementsToAdd.forEach(element => {
    arr.unshift(element);
});
console.timeEnd('unshift');

// 重置数组
arr = [];

// 测试splice方法
console.time('splice');
elementsToAdd.forEach((element, index) => {
    arr.splice(index, 0, element);
});
console.timeEnd('splice');