【问题标题】:Finding out how many times an array element appears in javascript and return from big to small找出数组元素在javascript中出现的次数并从大到小返回
【发布时间】:2018-09-12 19:47:34
【问题描述】:

作为对这个问题的参考,想法是一样的

Get all non-unique values (i.e.: duplicate/more than one occurrence) in an array

但是

我希望他们显示应用而不是删除重复项

numArr=["hi", "apple", "window", "hi", "go", "window", "phone", "go", "hi", "down", "hi"];

起初我只是想知道什么功能确实可以找到重复的项目我认为对于 python 我把它放在它上面并不难但似乎在这里很难是 javascript 另外我说我会尝试在谷歌上找到哪个做我想做的事,但每个代码都比另一个代码更难,所以在问这里之前,我得到了一个流行的问题,我提供了上面我刚刚检查过的链接,但是每个代码都比另一个代码更难,所以在那一刻我决定在这里问你

结果如下图所示

"hi","book","goal" 出现 4 次

"window","door","pencil","speaker"出现2次

或者我说每个(出现四次的数字)创建一个新数组 如果按数字出现或按顺序从 a-z 看起来很容易

请注意: - 当我给任何人时,他可以通过他的话并看到他的最终结果 - 我希望代码按从 a-z 和从大到小的顺序显示 - 代码或函数必须接受即使数组中的单词是百万及以上 - 即使有另一个单词显示相同的次数。

【问题讨论】:

  • 到目前为止你有什么尝试?
  • 嘿,杰克,如果您显示一些代码并解释您遇到问题的地方,您会对此类问题做出更积极的反应。仅仅发布一个关于代码必须做什么的要求听起来就像你想要一个代码编写服务——这种请求在这里不受欢迎,并导致投票失败。
  • 好的谢谢我会这样做,因为我想知道这样做但似乎很难

标签: javascript arrays


【解决方案1】:

我将为您提供所需的逻辑,并邀请您尝试弄清楚如何编写代码。正如其他几个人所提到的,我们不会为你做这件事,但我很乐意看看我是否可以教你如何自己做。

首先,创建一个二维数组(我称之为myResult)。第一个维度将包含 numArr 数组中的每个不同值。第二个维度将包含该值在您的数组中出现的总次数。

现在,使用for 循环来迭代您的数组(意味着从头到尾遍历它)。每次执行循环时,请执行以下操作:

  1. myResult 中查找当前数组元素的值(使用findIndex(),这样您就可以获得它所在位置的索引)。
  2. 如果找不到,请将其添加到数组中(使用push())。然后,将第二个维度的值更改为 1。
  3. 如果找到了,只需将第二个维度的值加 1(第一个维度的索引将是您使用 findIndex 找到的索引,而第二个维度的索引将始终为零 - 你永远不会每个数组的值都有一个以上的总值)。

完成所有操作后,您可以迭代您的 myResult 数组并打印您的结果(使用 console.log() 开始;一旦它按照您想要的方式工作,您就可以让它在您想要的地方打印) .

我建议您阅读并熟悉我推荐的方法,看看您是否能提出解决方案。如果您有任何问题,请在 cmets 中提问。 w3schools.com 是一个很好的起点。

【讨论】:

  • 好的...这很有帮助,它帮助我熟悉了要使用的方法....但我希望我能看到另一个对我有帮助的答案
  • @jack 在我看来,你宁愿让别人为你做这件事,也不愿学会自己做。当您准备好尝试自己做时,如果您需要,我很乐意为您提供进一步的帮助。如果您需要澄清,请随时就我所说的任何内容提出具体问题。
  • @jack 不客气。现在假设您尝试解决问题。 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-15
  • 1970-01-01
  • 2020-04-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多