2016-11-18 4 views
-3

я должен сделать такую ​​вещь:Как найти большую цену, используя JQuery

Из списка цен (writed как текст: 10.00 USD), найти цену heighest. У меня есть список, как:

<ul> 
    <li>29.99 USD</li> 
    <li>129.00 USD</li> 
    <li>40.00 USD</li> 
    <li>229.99 USD</li> 
    <li>30.00 USD</li> 
</ul> 

Как сохранить в переменной наибольшее значение? Я понимаю, что мне нужно заменить текст на математическое значение (отрезать последние четыре символа), а затем посмотреть, кто является наибольшим. Как это сделать?

+2

Так вы говорите, что вы хотите, чтобы округлять значение до ближайшего целого числа, а затем найти самый высокий, это правильно? Также, пожалуйста, напишите код, который вы сами пытались сделать. SO не является службой записи кода. –

+0

Пожалуйста, поделитесь своим подходом или частью кода. –

ответ

1

Используя метод map(), получите все проанализированные массивы чисел, а затем получите максимальное значение из массива, используя Math.max с методом Function#apply.

console.log(
 
    Math.max.apply(Math, $('ul li').map(function() { 
 
    return Number($(this).text().replace(/[^\d.]+/g, '')); // parse number after removing any non-digit char 
 
    }).get()) 
 
)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    <li>29.99 USD</li> 
 
    <li>129.00 USD</li> 
 
    <li>40.00 USD</li> 
 
    <li>229.99 USD</li> 
 
    <li>30.00 USD</li> 
 
</ul>

Смежные вопросы