【问题标题】:javascript/jquery get lowest numberjavascript/jquery 获得最低数字
【发布时间】:2015-01-04 07:48:38
【问题描述】:
$("div").each(function(){
  var index_no = $(this).index();
  console.log(index_no);
});

我想获得最低的索引,但我做不到

【问题讨论】:

  • 我有索引号,比如 2-4-1 我想像 1-2-4 一样对它们进行排序,并且当点击按钮时我有一个动态系统,我得到随机索引号

标签: javascript jquery


【解决方案1】:

我想获得最低的索引,但我做不到

当然可以:0

任何数组的最低索引在 JavaScript 中都是 0。


如果你有一个值数组,你可以这样得到最小值:

var arr = [3,1,4];
Math.min.apply(Math, arr);  // returns 1

鉴于您的 codepen 示例(您应该在问题中包含该示例):

var indexes = [];
$("div").each(function(i){
   if(!$(this).hasClass("lo")){
     indexes[indexes.length]=i;
   }
});


console.log("Matches: ", indexes);
console.log("Min: ", Math.min.apply(Math,indexes));

【讨论】:

  • 看,我有一个 each 并且我有一个 if (!$(this).hasClass("bla")){ console.log($(this).index()) ; } 它返回 2,5,7 我必须得到 2 个数字
  • @Ugurcan 您将索引号与该索引号处的值混淆了。如果你有一个像 [2, 5, 7] 这样的数字数组,那么 array[0] 将是 2。
  • @Ugurcan:你看到了吗?
  • 谢谢,我怎样才能只得到第一个号码?你能帮我解决这个问题吗?
  • @Ugurcan 我不明白。 indexes[0] 将返回数组中的第一个数字。
【解决方案2】:

如果您查看jQuery documentation,您会看到each 函数为您传入的回调函数提供索引号。

另外,我不确定我是否理解你想要用你的代码完成什么,但集合的最低索引不是 0 吗?

【讨论】:

  • 谢谢,我有索引号,但我必须得到最低的索引号,我无法对它们进行排序:S
  • 我认为您需要进一步说明最低索引号的含义。
  • 我在顶部添加评论
  • 如果你有一组索引号,为什么不能只对这些数字进行排序?
  • 我不知道该怎么做
【解决方案3】:

HTML

<p>index_0</p>
<div>index_1</div>
<div>index_2</div>
<p>index_3</p>
<p>index_4</p>
<div>index_5</div>
<div>index_6</div>
<div>index_7</div>

JS

var cnt = 0;
var idxArray = [];

$("div").each(function(){
  var index_no = $(this).index();
  idxArray[cnt] = index_no;
    cnt++;
});
alert('The lowest index of DIV is [' + Math.min.apply(Math, idxArray) + ']');

工作示例

FIDDLE

【讨论】:

    猜你喜欢
    • 2019-08-24
    • 2018-01-18
    • 2021-12-23
    • 2018-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-24
    相关资源
    最近更新 更多