【问题标题】:How to get the frequent value output inside the div?如何获取div内部的频繁值输出?
【发布时间】:2018-09-06 05:02:26
【问题描述】:

看到这篇文章How can i get most repeated value from Array in javascript

我是 jquery 的新手,我想知道如果在 idclass div 中声明数组值,我该如何获取? p>

<p>#1 - Rate: <span class="score" id="score1"> 5</span></p>
<p>#2 - Rate: <span class="score" id="score2"> 5</span></p>
<p>#3 - Rate: <span class="score" id="score3"> 5</span></p>
<p>#4 - Rate: <span class="score" id="score4"> 5</span></p>
<p>#5 - Rate: <span class="score" id="score5"> 5</span></p>

这是输出的样子:

<div id="totalScore">55555</div>

我通过获取 5 个项目的费率来做到这一点

jQuery("#totalScore").append(jQuery(".list1").text());

在上面的文章中,值在数组中

var arr = [{
  values: "Number of pips"
}, {
  values: 4
}, {
  values: 4
}, {
  values: 4
}, {
  values: 5
}, {
  values: 2
}, {
  values: 6
}, {
  values: 6
}, {
  values: 5
}];



var uniqs = {};

for (var i = 0; i < arr.length; i++) {
  uniqs[arr[i].values] = (uniqs[arr[i].values] || 0) + 1;
}

var max = {
  val: arr[0],
  count: 1
};
for (var u in uniqs) {
  if (max.count < uniqs[u]) {
    max = {
      val: u,
      count: uniqs[u]
    };
  }
}

alert(max.val);

如何转换成这样?通过仅获取 id="totalScore".list1 中的值?

【问题讨论】:

标签: jquery arrays


【解决方案1】:

使用each 遍历每个.score,递增对象中的关联值。然后,遍历对象的entries,找出最大值的那个,并得到它的键(通过访问条目的[0]索引):

const counts = {};
$('.score').each((_, span) => {
  const num = span.textContent.trim();
  counts[num] = (counts[num] || 0) + 1;
});
console.log(
  Object.entries(counts).reduce((a, item) => (
    item[1] > a[1]
    ? item
    : a
  ), [,0])[0]
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>#1 - Rate: <span class="score" id="score1"> 5</span></p>
<p>#2 - Rate: <span class="score" id="score2"> 5</span></p>
<p>#3 - Rate: <span class="score" id="score3"> 3</span></p>
<p>#4 - Rate: <span class="score" id="score4"> 4</span></p>
<p>#5 - Rate: <span class="score" id="score5"> 5</span></p>
<p>#6 - Rate: <span class="score" id="score6"> 4</span></p>

【讨论】:

  • 非常感谢先生!但是我怎么能说附加这个或将它显示在一个 div 中呢?假设输出将显示在
    5
    中。欣赏先生!
  • 只需选择那个 div 并设置它的text?
  • Did it 但它显示 Not availableNot availableNot availableNot availableNot availableNot available.虽然它出现在我的控制台中。 Appology先生,我知道我听起来很愚蠢,但我是这方面的初学者。欣赏它。谢谢
  • 我不知道会怎样,把console.log换成$('#mostFrequentNumber').text就行了?
  • 不,它没有识别出价值。不过非常感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2018-07-13
  • 1970-01-01
  • 2013-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-11
  • 1970-01-01
相关资源
最近更新 更多