国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

一個更聰明的方法是編寫一個函數(shù),該函數(shù)使用許多條件語句根據(jù)不同的數(shù)值范圍返回增量值
P粉311464935
P粉311464935 2023-08-17 23:18:09
0
1
652
<p>我正在嘗試編寫一個函數(shù),如果輸入在某個數(shù)字范圍內,就返回特定的值。</p> <p>通常情況下,我會寫一系列的if/else if語句來完成這個任務。但是,我正在處理大量的范圍,所以寫出30多個if/else if語句似乎效率低下。</p> <p>假設我有一個整體范圍的最小和最大數(shù)字,并且我想將其分成更小的范圍。對于每個范圍,我想返回一些值。理想情況下,每個范圍的返回值將以某個固定數(shù)字遞減。</p> <p>為了提供背景,我正在嘗試使用類似于這樣的方法來根據(jù)里程數(shù)計算一個值。例如,如果里程數(shù)在101-120英里之間,費率等于里程數(shù)的80%。隨著里程數(shù)的增加,百分比會遞減。而且,百分比遞減的數(shù)值可以是某個固定數(shù)字(例如<code>-0.05</code>)</p> <pre class="brush:php;toolbar:false;">... else if (m >= 101 && m <= 120) return 0.80 else if (m >= 121 && m <= 140) return 0.75 ...</pre> <p>由于每個范圍的返回值存在一種模式,我認為可以以比寫一堆if/else語句更好的方式來完成,但我不確定具體如何做到。有什么想法嗎?</p>
P粉311464935
P粉311464935

全部回復(1)
P粉930534280

你的例子沒有以15遞增;所以,我假設那是一個打字錯誤。

我會使用一個函數(shù)來解決。 例如:

(() => {

// 在你的例子中,你有 .95 -> .9 -> .85,因此這從1開始。
const STARTING_RETURN_VALUE = 1;

// if語句中的遞增范圍是15
const INCREMENT = 15;

// 這是每個間隔中返回值遞減的值
const DECREASING_RETURN_VALUE = .05;

const getReturn = (x, increment, starting_return_value, decreasing_return_value) => {
     return starting_return_value - (Math.floor(x/increment)+1)*decreasing_return_value;
}

console.log(getReturn(29, INCREMENT, STARTING_RETURN_VALUE, DECREASING_RETURN_VALUE));

})();
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板