javascript - 在 jQuery 或 Javascript 中获取某个属性的最高值和最低值

标签 javascript jquery html loops

我有以下 div:

<div id="2" class="maindiv">test</div>
<div id="5" class="maindiv">test</div>
<div id="3" class="maindiv">test</div>
<div id="1" class="maindiv">test</div> 
<div class="maindiv">test</div>     
<div id="4" class="maindiv">test</div>    

如何在 jQuery 或 Javascript 中获取最高 id(5)和最低 id(1)?

最佳答案

为此,您可以创建一个包含所有 id 值的数组,然后使用 Math 获取最高/最低值:

var ids = $('.maindiv[id]').map((i, el) => parseInt(el.id, 10)).get();
var lowest = Math.min.apply(Math, ids); // = 1
var highest = Math.max.apply(Math, ids); // = 5

console.log(`${lowest} => ${highest}`);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="2" class="maindiv">test</div>
<div id="5" class="maindiv">test</div>
<div id="3" class="maindiv">test</div>
<div id="1" class="maindiv">test</div>
<div class="maindiv">test</div>
<div id="4" class="maindiv">test</div>

请注意 [id] 属性选择器是必需的,否则将假定 0 为缺失值。

如果需要IE支持,需要使用匿名函数代替箭头函数:

var ids = $(".maindiv[id]").map(function() {
  return parseInt(this.id, 10);
}).get();

关于javascript - 在 jQuery 或 Javascript 中获取某个属性的最高值和最低值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14775921/

相关文章:

javascript - 为什么我应该使用 JQuery Ajax 模板

html - 如何使用 css 和 html 从两个相同的表中设置一个样式?

Javascript/jQuery 选择嵌套行中的第一个 anchor child

javascript - 了解 `Boolean.constructor` 和 `Boolean.constructor(true)`

jquery - 按组获取单选按钮值

javascript - 如何使用 AJAX 重新加载 Laravel @includes?

javascript - 计算字符串中每个字符的出现次数

javascript - 使用 Ajax 弹出窗口进行基本身份验证登录?

php - 是否有更简洁的方法来处理每页的侧边栏事件状态?

asp.net - 为什么 float 元素中的 float &lt;input&gt; 控件在 IE7 中向右滑动太远,而在 Firefox 中则不然?