JavaScript 利用数组长度特性实现无循环迭代

作者:半夏

时间:2026-10-25

浏览:484

本文介绍一种在 JavaScript 中不使用 for 循环生成连续数组的技巧。通过设置数组长度并利用 toString 方法触发逗号分隔符替换,结合正则表达式回调函数 push 元素,从而返回指定范围的数组。该方法展示了 JS 数组底层机制的一个有趣应用。

文章目录

JavaScript 利用数组长度特性实现无循环迭代

该思路源自技术交流群中的一道题目:



假设有一个数值 n=5,要求在不使用 for 循环的前提下,返回一个包含 [1,2,3,4,5] 的数组。


群成员“糖果男孩”提供了如下解决方案:



具体实现代码如下:

function getArr(n) {
var a = [],
b = [],
m = 0;
a.length = n + 1;
a.toString().replace(/,/g, function () {
b.push(++m);
    });  
return b;
} 

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章