Пример #1
0
module.exports = function(data, fallback, min, max) {
  if (isNumber(data) === false) {
    return isNumber(fallback)
      ? fallback
      : 0
  }
  if (isNumber(min)) {
    if (isNumber(max)) {
      if (max < min) {
        var t = min
        min = max
        max = t
      }
      if (data > max) return max
    }
    if (data < min) return min
  }
  return data
}
Пример #2
0
module.exports = function(data, fallback) {
  if (isNumber(data)) return data
  if (isString(data)) {
    data = data.trim().toLowerCase()
    if (data === 'infinity') return Infinity
    if (data === '-infinity') return -Infinity
    var n = +data
    if ((n - n + 1) >= 0) return n

    if (reg.test(data)) {
      n = new Function('return (' + data + ')')()
      if (n === Infinity || n === -Infinity) return n
      if ((n - n + 1) >= 0) {
        return Math.round(n * 10000000000) / 10000000000
      }
    }
  }

  if (isNumber(fallback)) return fallback
}