Skip to content

Commit

Permalink
Solution
Browse files Browse the repository at this point in the history
  • Loading branch information
tiblazy committed Feb 4, 2025
1 parent 67725ad commit f31dcd4
Show file tree
Hide file tree
Showing 4 changed files with 71 additions and 6 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/test.yml-template
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Test

on:
pull_request:
branches: [ master ]

jobs:
build:

runs-on: ubuntu-latest

strategy:
matrix:
node-version: [20.x]

steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm test
8 changes: 4 additions & 4 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"license": "GPL-3.0",
"devDependencies": {
"@mate-academy/eslint-config": "latest",
"@mate-academy/scripts": "^1.8.6",
"@mate-academy/scripts": "^1.9.12",
"eslint": "^8.57.0",
"eslint-plugin-jest": "^28.6.0",
"eslint-plugin-node": "^11.1.0",
Expand Down
44 changes: 43 additions & 1 deletion src/formatDate.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,49 @@
* @returns {string}
*/
function formatDate(date, fromFormat, toFormat) {
// write code here
const splitFromFormat = fromFormat[3];
const splitDate = date.split(splitFromFormat);

let day = '';
let month = '';
let year = '';

for (let i = 0; i < fromFormat.length; i++) {
if (fromFormat[i] === 'YYYY') {
year = splitDate[i];
} else if (fromFormat[i] === 'YY') {
if (parseInt(splitDate[i]) < 30) {
year = `20${splitDate[i]}`;
} else {
year = `19${splitDate[i]}`;
}
} else if (fromFormat[i] === 'MM') {
month = splitDate[i];
} else if (fromFormat[i] === 'DD') {
day = splitDate[i];
}
}

let newDate = '';

for (let i = 0; i < toFormat.length; i++) {
if (toFormat[i] === 'YYYY') {
newDate += year;
} else if (toFormat[i] === 'MM') {
newDate += month;
} else if (toFormat[i] === 'DD') {
newDate += day;
} else if (toFormat[i] === 'YY') {
year = year.slice(2);
newDate += year;
}

if (i < toFormat.length - 2) {
newDate += toFormat[3];
}
}

return newDate;
}

module.exports = formatDate;

0 comments on commit f31dcd4

Please sign in to comment.