summaryrefslogtreecommitdiff
path: root/date-fns/src/monthsToQuarters/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'date-fns/src/monthsToQuarters/index.ts')
-rw-r--r--date-fns/src/monthsToQuarters/index.ts31
1 files changed, 31 insertions, 0 deletions
diff --git a/date-fns/src/monthsToQuarters/index.ts b/date-fns/src/monthsToQuarters/index.ts
new file mode 100644
index 0000000..0e5bb5d
--- /dev/null
+++ b/date-fns/src/monthsToQuarters/index.ts
@@ -0,0 +1,31 @@
+import requiredArgs from '../_lib/requiredArgs/index'
+import { monthsInQuarter } from '../constants/index'
+
+/**
+ * @name monthsToQuarters
+ * @category Conversion Helpers
+ * @summary Convert number of months to quarters.
+ *
+ * @description
+ * Convert a number of months to a full number of quarters.
+ *
+ * @param {number} months - number of months to be converted.
+ *
+ * @returns {number} the number of months converted in quarters
+ * @throws {TypeError} 1 argument required
+ *
+ * @example
+ * // Convert 6 months to quarters:
+ * const result = monthsToQuarters(6)
+ * //=> 2
+ *
+ * @example
+ * // It uses floor rounding:
+ * const result = monthsToQuarters(7)
+ * //=> 2
+ */
+export default function monthsToQuarters(months: number): number {
+ requiredArgs(1, arguments)
+ const quarters = months / monthsInQuarter
+ return Math.floor(quarters)
+}