问题标签 [array-reduce]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1543 浏览

javascript - 使用 array.reduce() 获取对象数组中对象出现次数的 JavaScript 代码

需要使用 array.reduce() [high:3, advanced:2] 计算上述数组中的整体级别

0 投票
1 回答
59 浏览

javascript - 使用 array.reduce() 根据数组的一个属性从对象数组中获取日期范围的 JavaScript 代码

以下是从数组中提取的数据,这些数据表示级别及其日期。

“高”:2015 年 8 月 10 日、2015 年 8 月 14 日、2015 年 9 月 7 日

“高级”:2015 年 8 月 11 日、2015 年 8 月 20 日

“基本”:2016 年 1 月 30 日,2016 年 8 月 1 日,2015 年 12 月 12 日,2016 年 6 月 13 日,

“中级”:2016 年 8 月 30 日、2016 年 8 月 30 日

预期输出:需要最小和最大日期的范围,即进一步显示

{ 高:2015 年 8 月 10 日 - 2015 年 9 月 7 日,高级:2015 年 8 月 11 日 - 2015 年 8 月 20 日,基本:2015 年 12 月 12 日 - 2016 年 8 月 1 日,中级:2016 年 1 月 30 日}

这就是我能够获得用于分组目的的整体级别的计数。

请访问: https ://jsfiddle.net/Saily/6nzxd6ss/

0 投票
1 回答
1114 浏览

javascript - Javascript,使用 Promises 在 Array.reduce 中上传多个文件,如何?

Javascript 发展而来,用 Promises 为大文件拼接 FileReader,怎么样?,它向我展示了 Promise 如何也可以解析函数,现在我被困在相同但在 Array.reduce 函数中。

目标是我想在数组中上传一个文件(已经上传),其中每个数组项(一个文件)按顺序上传(即通过承诺控制)。

然后,我知道答案在http://www.html5rocks.com/en/tutorials/es6/promises/?redirect_from_locale=es中,但我不明白如何将其应用于此处。我的数组不是承诺数组,是文件数组。好吧,整个事情对我来说仍然是模糊的。

ein这是我的代码,如果我能看到console.log 消息,它将起作用:

  • 几条评论后更新,现在看来它可以工作了……还不确定

    var uploading_file, start, temp_end, end, content; var BYTES_PER_CHUNK = 100000;

    myArray.reduce(function(previous, current) { return previous .then(function() { BYTES_PER_CHUNK = 100000; start = 0; temp_end = start + BYTES_PER_CHUNK; end = parseInt(current.size); if (temp_end > end) temp_end = 结束;内容 = '';uploading_file = 当前;

    }); },Promise.resolve()) .then(function(){ console.log('ein'); });

    function upload() { if (start < end) { return new Promise(function(resolve){ var chunk = uploading_file.slice(start, temp_end); var reader = new FileReader(); reader.readAsArrayBuffer(chunk); reader. onload = function(e) { if (e.target.readyState == 2) { content += new TextDecoder("utf-8").decode(e.target.result); start = temp_end; temp_end = start + BYTES_PER_CHUNK ; if (temp_end > end) temp_end = end; resolve(upload()); } } }); } else { uploading_file = null; 返回 Promise.resolve(内容); } }

  • 改进的代码,似乎工作,也许更容易阅读?

    /li>
0 投票
18 回答
9469 浏览

php - 如何使用 PHP 将多维数组转换为单个数组?

实现数据库查询后,我得到了下面的多维数组。

二维数组

但我想将其转换为一维数组,如下所示:

一维数组

我怎样才能做到这一点?

0 投票
2 回答
52 浏览

php - 如何组合具有不同键的关联数组?

我正在尝试合并 5 个具有不同键的关联数组。这是对 5 个数组使用数组合并后的结果

结果

我想让这个数组像

0 投票
1 回答
2616 浏览

php - 致命错误:PHP 中不支持的操作数类型

我有那个代码,我想将 corp_resp 与 corp_resp_template 相乘并动态求和。

代码:

corp_resp 输出:

代码:

corp_resp_template 输出:

给出以下错误: Fatal error: Unsupported operand types in C: 其中 2 是数组。

另一个疑问是当我有 corp_resp_template 并且我想在同一个函数中为不同的 corp_resp 做结果时如何工作?

0 投票
1 回答
360 浏览

php - 对动态变量使用 array_reduce 和 array_map

我想让该变量$total[$i]给出以下函数的结果:

我从$corp_resp_template示例中收到: array(0.4,0.2,0.1) for $corp_resp array(array(sub1(0.2,0.3,0.5) arraysub2(0.2,0.5,0.7)))

$corp_resp_template因为那个操作只有一个。$corp_resp是内部包含子数组的数组,$carCount在这种情况下,$carCount=2如果是 4 将给出 4 个子数组,其中将插入的值将$corp_resp_template只有一个与 相同大小的数组$corp_resp

示例操作:

总计 1 =(0.4*0.2+0.2*0.3+0.5*0.1)=0.19 $total[0]

总计 2 =(0.4*0.2+0.2*0.5+0.1*0.7)=0.25 $total[1]

该总值将插入表格的行中。

谢谢你。

0 投票
1 回答
3629 浏览

php - 使用关联数组减少数组

我有一个这样的数组

我想通过在数组顶部放置 filter_namefilter_id来减少数组,这对于所有数组都是相似的。

但我只是在filter_values上获得最后一个数组迭代值

但我希望数组是这样的。

0 投票
5 回答
1600 浏览

javascript - 使用 JavaScript 将数组中的多个元素分组

我有一个数组

我希望它变成

我曾尝试使用arr.reduce((prev, curr) => ..., [])来完成此操作,但我不知道该怎么做。

0 投票
3 回答
1090 浏览

php - 如何在标准类对象 (PHP) 数组中返回最小值?

我有一个 StdClass 对象数组,并希望返回键“price”的最小值的“partner_code”。所以对于这个例子,我想返回 partner_code "AC",因为它是价格最低的合作伙伴。我尝试使用array_reduce,但我不确定我做错了什么。任何帮助,将不胜感激。请注意,我不想对这个数组进行排序。我只想将包含AC(因为它保持最低价格)的子数组移到顶部 - 不按价格对所有内容进行排序

输入数组:

代码: