Как сравнить две процентные строки - PullRequest
2 голосов
/ 04 августа 2020

У меня две строки: 50% и 60%. Я пытаюсь сравнить две строки и выяснить, что 60% больше 50%. Каким будет самый простой и понятный способ сравнить две строки? Я всегда могу удалить знак %, преобразовать строки в целые числа и сравнить их. Но есть ли способ лучше?

Ответы [ 4 ]

3 голосов
/ 04 августа 2020

Вы можете использовать parseInt для анализа только части numeri c.

let x = "50%";
let y = "60%";
parseInt(x)>parseInt(y)?console.log(`${x} is greater than ${y}`):console.log(`${y} is greater than ${x}`);

Console: 60% is greater than 50%
0 голосов
/ 04 августа 2020
function cmpPercentages(str1, str2){
    var per1 = parseFloat(str1);
    var per2 = parseFloat(str2);
    if(per1 > per2){
        return 1;
    }else if(per2 > per1){
        return -1;
    }else{
        return 0;
    }
}

Где 1 означает, что первый процент больше, -1, что первый процент меньше второго, и 0, что они равны, как и результат localeCompare.

0 голосов
/ 04 августа 2020

Замените строку, чтобы удалить %, а также проанализируйте ее для сравнения

Пример Stackblitz

0 голосов
/ 04 августа 2020
let percentage1 = parseFloat('50%');
let percentage2 = parseFloat('60%');

if (percentage1 <= percentage2) {
    // Code here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...