gpt4 book ai didi

javascript - for 循环迭代的替代方案如何工作? (Javascript)

转载 作者:行者123 更新时间:2023-12-03 03:41:56 30 4
gpt4 key购买 nike

有人可以向我解释一下这段代码是如何工作的,或者解释一下这个代码的链接吗?(具体部分:+acc++curr;)

有问题的代码:

let args = process.argv;
let sum = args.reduce(function(acc, curr) {
return +acc + +curr;
});
console.log(sum);

使用 for 循环执行相同操作的原始解决方案:

let result = 0;
for (i = 0; i < process.argv.length; i++) {
result += Number(process.argv[i])
}
console.log(result);

上面的花哨代码是了解/推荐实践的好方法吗?谢谢。

最佳答案

let args = process.argv <- 获取参数let sum = args.reduce(function(acc, curr) { <- 使用数组reduce,将其减少为单个值return +acc++curr; <- 这使用一元运算符将两者转换为数字表示,然后将它们相加

console.log(sum) <- 控制台输出 array.reduce 返回的值,然后将其分配给 sum。

减少文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce

一元运算 rune 档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators#Unary_plus

就最佳实践而言,我不认为这是非常可读的。而且这在 JS 中并不常见。由于类型强制,你很少需要这个。话虽这么说,我不认为这是不好的做法。

关于javascript - for 循环迭代的替代方案如何工作? (Javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45573731/

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