1
0
mirror of https://github.com/musix-org/musix-oss synced 2024-09-20 10:51:56 +00:00
musix-oss/node_modules/core-js/internals/math-scale.js
2020-03-03 22:30:50 +02:00

17 lines
557 B
JavaScript

// `Math.scale` method implementation
// https://rwaldron.github.io/proposal-math-extensions/
module.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) {
if (
arguments.length === 0
/* eslint-disable no-self-compare */
|| x != x
|| inLow != inLow
|| inHigh != inHigh
|| outLow != outLow
|| outHigh != outHigh
/* eslint-enable no-self-compare */
) return NaN;
if (x === Infinity || x === -Infinity) return x;
return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow;
};