From 16dc05b2dbd065572fb9f2928395d86cd7bff3d7 Mon Sep 17 00:00:00 2001 From: Roman Timashev Date: Thu, 13 Aug 2015 10:40:16 +0300 Subject: [PATCH] + common, date utils --- utils/common.js | 20 ++++++++++++++++++++ utils/date.js | 21 +++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 utils/common.js create mode 100644 utils/date.js diff --git a/utils/common.js b/utils/common.js new file mode 100644 index 00000000..069781b3 --- /dev/null +++ b/utils/common.js @@ -0,0 +1,20 @@ +module.exports = { + range: range +}; + +/** + * Generates list of numbers + * @param {Number} start starting value + * @param {Number} num amount of numbers in list + * @param {Number} step difference value + * @return {Array} list of numbers + */ +function range(start, num, step) { + var list = []; + var val = start; + for (var i = 0; i < num; i++) { + list.push(val); + val += step; + } + return list; +} \ No newline at end of file diff --git a/utils/date.js b/utils/date.js new file mode 100644 index 00000000..391f4610 --- /dev/null +++ b/utils/date.js @@ -0,0 +1,21 @@ +var range = require('./common').range; + +module.exports = { + getDates: getDates +}; + +/** + * + * @param start + * @returns {*} + */ +function getDates(start) { + var day = start.getDay(); + return range(0, 6, 1).reduce(function (dates, weekDay) { + var d = 1 + weekDay - day; + var time = start.getTime() + (1000 * 60 * 60 * 24) * d; + var date = new Date(time); + dates.push(date.getDate()); + return dates; + }, []); +} \ No newline at end of file