2017-03-15 87 views
1

我想在兩個數字之間得到一定的結果。我做了這個:Jquery/Javascript函數在兩個數字之間得到結果

var number = $("#number").val(); 

if(number>=1 && number<=5){ 
    alert('2 points!'); 
} else if(number>=6 && number<=10){ 
    alert('3 points!'); 
} else if(number>=11 && number<=15){ 
    alert('4 points!'); 
} else if(number>=16 && number<=20){ 
    alert('5 points!'); 
} 
...and continues... 

我想要一種方法來做到這一點更短,我想一些幫助。

+0

這? '警報(Math.ceil(number/5 + 1)+'points!')' –

+0

@le_m Woops nvm,意外使用的地板 – Bug

回答

1

如果每個範圍都是平等的,那麼你就需要這樣的:

var number = $("#number").val(); 
var range = 5; 
var points = Math.ceil(number/range) + 1; 
alert(points + ' points!'); 
+0

這非常有用!謝謝 ! – NekoLopez

1

function getPoints(n) { 
 
    if (!n || n < 1) return ''; 
 
    return Math.floor((n - 1)/5) + 2 + " points!"; 
 
} 
 
document.getElementById('a').addEventListener('keyup', function() { 
 
    document.getElementById('b').innerText = getPoints(parseInt(this.value)); 
 
});
<input id="a" type="number" /> 
 
<span id="b"></span>