gpt4 book ai didi

JavaScript for 循环替代 : repeat(n, function(i) { ... });

转载 作者:数据小太阳 更新时间:2023-10-29 04:56:42 24 4
gpt4 key购买 nike

这是常规的 for 循环:

for (var i = 0; i < n; i++) { ... }

它用于遍历数组,但也只是重复一些过程n次。

我使用上面提到的形式,但它让我反感。标题 var i = 0; i < n; i++非常丑陋,每次使用时都必须逐字重写。

我写这个问题是因为我想出了一个替代方案:

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) { ... });  

那你怎么看?这是repeat吗函数是 native for 循环的有效替代方法?这种替代方案有哪些缺点(除了性能 - 我知道这一点)?

原生:

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

备选方案:

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

最佳答案

你说你想要一场革命......好吧,你知道:ruby 就在(?)之前做到了

Number.prototype.times = function(func) { 
for(var i = 0; i < Number(this); i++) {
func(i);
}
}

表示

(50).times(function(i) {
console.log(i)
})

反正别跟C打了,你老是输:-P

关于JavaScript for 循环替代 : repeat(n, function(i) { ... });,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4929113/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com