gpt4 book ai didi

javascript - 从起始位置求和下一个数组元素 (javascript)

转载 作者:行者123 更新时间:2023-12-01 02:44:15 24 4
gpt4 key购买 nike

我需要这个来动态使用。我有 2 个关联的数组:

Var $some = [1, 2, 3];
Var $other = [a, b, c];

a、b、c 是一些 html id,1、2、3 是它们的值。我想要这样的触发器:

$'#a').attr('max', //b+c val(2+3)
$'#b').attr('max', //a+c val(1+3)
$'#c').attr('max', //a+b val(1+2)

我在这里搜索过get prev and next items in array关于在数组中查找下一个元素,我认为一个循环会很有用,该循环迭代元素 a(然后是 b,然后是 c)及其值,并为每个元素执行如下代码:对它们求和下一个元素。在 sumed 之后减去元素值将无法正常工作,因为我希望该脚本在某些范围内发生变化......所以...我的问题是:如何对循环中迭代的元素求和?我认为这将是解决这个问题的关键,因为我可以在这个例子中循环它两次,并且会在没有启动元素的情况下停止......

最佳答案

如果您的someother是相同的,那么您可以尝试这个解决方案。

const some = [1, 2, 3];
const other = ['a', 'b', 'c'];

other.forEach((item, index) => {
const sum = some.reduce((s, c, i) => index !== i ? s += c : s, 0);

$(`#${item}`).text(sum);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p id="a"></p>
<p id="b"></p>
<p id="c"></p>

我正在迭代 other 数组中的每个项目。传递到 forEach 的函数获取两个参数 - 当前项目及其在 other 数组中的索引。然后我打电话reducesome 数组上并向其中传递一个函数,该函数获取三个参数 - 累积值、当前项及其在 some 数组中的索引。在正文中,我检查 some 当前项目索引是否不等于 other 当前项目索引(这会阻止 a 添加值对于 a ),所以我将其添加到 s 中,其中包含 some.reducea 每次迭代的结果,返回它是自动完成的在一行语句中 if not 返回结果而不添加当前项目值。

你可以这样编写reduce函数以提高可读性

some.reduce((s, c, i) =>  {
if(index !== i) {
s += c;
}

return s;
}, 0)

关于javascript - 从起始位置求和下一个数组元素 (javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47362872/

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