【问题标题】:What is the most compact way in JavaScript to force a value in a range of values? [duplicate]在 JavaScript 中强制一个值在一个值范围内的最紧凑的方法是什么? [复制]
【发布时间】:2016-05-16 01:59:18
【问题描述】:

我有一个简单的 2 行程序,就像

if ( bgwidth < 0 ) { bgwidth = 0; }
else if ( bgwidth > 100 ) { bgwidth = 100; }

我想知道最紧凑的方法是什么。移位运算符有什么方法吗? :)

【问题讨论】:

  • File under: Nonsensical micro-optimization // 为了不可读,我会使用嵌套的Math.min/.max,这是一个不错的单行。 (不要忘记在这种情况下不要注释代码,这会破坏乐趣。)

标签: javascript algorithm optimization


【解决方案1】:

Math.min()Math.max() 可能会成功:

Math.min(Math.max(0, bgwidth), 100);

为了可读性:

function fitBetween(value, min, max) {
  return Math.min(Math.max(min, value), max);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 2019-09-04
    • 1970-01-01
    • 2022-02-01
    • 2011-09-10
    相关资源
    最近更新 更多