-1

我有一个 javascript 对象数组:

[
   Object { from="0", to="350", price="25"}, 
   Object { from="351", to="700", price="50"}
   ...
   Object { from="701", to="*", price="75"} // Where * - unlimited value
]

输入值:var total = 100

我怎样才能找到价格价值?

示例:对于总计 = 100,我的价格值为 25。

4

1 回答 1

1
var ranges = [
    { from:0, to:350, price:25},
    { from:351, to:700, price:50},
    { from:701, to:"*", price:75}
];    

function isInRange(range, value) {
    return range.from < value && (range.to === '*' || range.to >= value)
}

var value = 100;
var priceFound = false
for (var i = 0; i < ranges.length && !priceFound; i++) {
    var range = ranges[i];
    if (isInRange(range, value)) {
        alert("price: " + range.price);
        priceFound = true
    }
}

我清理了您的对象定义,因为您当前的版本不是有效的 javascript。

于 2013-09-12T13:22:03.230 回答