summaryrefslogtreecommitdiff
path: root/date-fns/src/isSameMonth/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'date-fns/src/isSameMonth/index.ts')
-rw-r--r--date-fns/src/isSameMonth/index.ts35
1 files changed, 35 insertions, 0 deletions
diff --git a/date-fns/src/isSameMonth/index.ts b/date-fns/src/isSameMonth/index.ts
new file mode 100644
index 0000000..65058b1
--- /dev/null
+++ b/date-fns/src/isSameMonth/index.ts
@@ -0,0 +1,35 @@
+import toDate from '../toDate/index'
+import requiredArgs from '../_lib/requiredArgs/index'
+
+/**
+ * @name isSameMonth
+ * @category Month Helpers
+ * @summary Are the given dates in the same month?
+ *
+ * @description
+ * Are the given dates in the same month?
+ *
+ * ### v2.0.0 breaking changes:
+ *
+ * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
+ *
+ * @param {Date|Number} dateLeft - the first date to check
+ * @param {Date|Number} dateRight - the second date to check
+ * @returns {Boolean} the dates are in the same month
+ * @throws {TypeError} 2 arguments required
+ *
+ * @example
+ * // Are 2 September 2014 and 25 September 2014 in the same month?
+ * var result = isSameMonth(new Date(2014, 8, 2), new Date(2014, 8, 25))
+ * //=> true
+ */
+export default function isSameMonth(dirtyDateLeft: Date | number, dirtyDateRight: Date | number): boolean {
+ requiredArgs(2, arguments)
+
+ const dateLeft = toDate(dirtyDateLeft)
+ const dateRight = toDate(dirtyDateRight)
+ return (
+ dateLeft.getFullYear() === dateRight.getFullYear() &&
+ dateLeft.getMonth() === dateRight.getMonth()
+ )
+}