JavaScript for-loop替代方法:repeat(n,function(i){…});

前端之家收集整理的这篇文章主要介绍了JavaScript for-loop替代方法:repeat(n,function(i){…});前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是常规for循环:
for (var i = 0; i < n; i++) { ... }

它用于迭代数组,但也只是重复一些进程n次.

我使用上面提到的形式,但它击退了我.标头var i = 0;我< N;我很丑陋,每次使用时都必须按字面意思重写. 我正在写这个问题,因为我提出了一个替代方案:

repeat(n,function(i) { ... });

这里我们使用带有两个参数的repeat函数
1.迭代次数,
2.一个身体代表正在重复的过程的功能.

代码隐藏”就像这样:

function repeat(n,f) {
    for (var i = 0; i < n; i++) {
        f(i);
    }
}

(我知道在流程的范围链中有两个额外的“级别”的性能影响)

顺便说一句,对于那些使用jQuery库的人来说,上面提到的功能可以通过$.each方法实现,如下所示:

$.each(Array(n),function(i) { ... });

所以你怎么看?这个重复函数是native for循环的有效替代吗?这个替代方案的缺点是什么(性能除外 – 我知道这个)?

本机:

for (var i = 0; i < 10; i++) {
    // do stuff
}

替代方案:

repeat(10,function(i) {
    // do stuff
});

解决方法

这是一个有趣的想法,但如果你不喜欢循环的语法,你总是可以做一个不同类型的循环:
var i = arr.length; 
while (i--) {
    // do stuff
}

反向while循环通常也比for循环快.

原文链接:https://www.f2er.com/js/155734.html

猜你在找的JavaScript相关文章