javascript/jquery 得到最小的数字

javascript/jquery get lowest number

$("div").each(function(){
  var index_no = $(this).index();
  console.log(index_no);
});

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

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

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

I want to get lowest index but I can't do that

当然可以:0

任何数组的最低索引在 JavaScript 中将为 0。


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

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

鉴于您的代码笔示例(您应该将其包含在您的问题中):

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));

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