使用 jquery 查找属性中的最小值和最大值

vel*_*rai 3 javascript jquery max min

我需要在数据属性中找到最小值和最大值,但它返回 0

这是我的代码

<div data-price="2" class="maindiv">test</div>
<div data-price="5" class="maindiv">test</div>
<div data-price="3" class="maindiv">test</div>
<div data-price="0" class="maindiv">test</div> 
<div data-price="25" class="maindiv">test</div>     
<div data-price="10" class="maindiv">test</div> 

<script>
    var ids = $("div[data-price]").map(function() {
        return this.id;
    }).get();

    var highest = Math.max.apply( Math, ids );
    var lowest = Math.min.apply( Math, ids );

    alert(highest);
    alert(lowest);
</script>
Run Code Online (Sandbox Code Playgroud)

gur*_*372 5

您需要返回data-price属性,而不是它的 id

var ids = $("div[data-price]").map(function() {
    return $(this).attr("data-price");
}).get();

var highest = Math.max.apply( Math, ids );
var lowest = Math.min.apply( Math, ids );

alert(highest);
alert(lowest);
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-price="2" class="maindiv">test</div>
<div data-price="5" class="maindiv">test</div>
<div data-price="3" class="maindiv">test</div>
<div data-price="0" class="maindiv">test</div> 
<div data-price="25"class="maindiv">test</div>     
<div data-price="10" class="maindiv">test</div>
Run Code Online (Sandbox Code Playgroud)