diff options
Diffstat (limited to 'src/node_modules/es-abstract/2015/MakeTime.js')
-rw-r--r-- | src/node_modules/es-abstract/2015/MakeTime.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/node_modules/es-abstract/2015/MakeTime.js b/src/node_modules/es-abstract/2015/MakeTime.js new file mode 100644 index 0000000..e118500 --- /dev/null +++ b/src/node_modules/es-abstract/2015/MakeTime.js @@ -0,0 +1,23 @@ +'use strict'; + +var $isFinite = require('../helpers/isFinite'); +var timeConstants = require('../helpers/timeConstants'); +var msPerSecond = timeConstants.msPerSecond; +var msPerMinute = timeConstants.msPerMinute; +var msPerHour = timeConstants.msPerHour; + +var ToInteger = require('./ToInteger'); + +// https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.11 + +module.exports = function MakeTime(hour, min, sec, ms) { + if (!$isFinite(hour) || !$isFinite(min) || !$isFinite(sec) || !$isFinite(ms)) { + return NaN; + } + var h = ToInteger(hour); + var m = ToInteger(min); + var s = ToInteger(sec); + var milli = ToInteger(ms); + var t = (h * msPerHour) + (m * msPerMinute) + (s * msPerSecond) + milli; + return t; +}; |