From 79eef70b957d3db4dc3fe4c0f6dc82c8c8f333b0 Mon Sep 17 00:00:00 2001 From: Ryan Fields Date: Tue, 14 Apr 2020 22:20:40 -0700 Subject: [PATCH] week1 hw --- package.json | 2 +- src/components/DivElement.js | 8 ++++++++ src/components/HTMLElement.js | 11 ++++++++++- src/components/Untitled.code-workspace | 7 +++++++ src/rolodex/rolodexPrinter.js | 11 +++-------- src/timer/Timer.js | 26 +++++++++++++------------- 6 files changed, 42 insertions(+), 23 deletions(-) create mode 100644 src/components/Untitled.code-workspace diff --git a/package.json b/package.json index e05edcb..a5a2b22 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Week 1 Assignment", "main": "index.js", "scripts": { - "lint": "eslint ./src", + "lint": "eslint --fix ./src", "test:watch": "jest --watch", "test": "npm run lint && jest", "file": "babel-node" diff --git a/src/components/DivElement.js b/src/components/DivElement.js index 7e22bcb..b1d4ff1 100644 --- a/src/components/DivElement.js +++ b/src/components/DivElement.js @@ -1,5 +1,13 @@ // Import HTMLElement here +import HTMLElement from './HTMLElement'; // Define class here +class DivElement extends HTMLElement { + constructor(content) { + super('div', content); + } +} + // Export class here +export default DivElement; diff --git a/src/components/HTMLElement.js b/src/components/HTMLElement.js index 559b785..51d231e 100644 --- a/src/components/HTMLElement.js +++ b/src/components/HTMLElement.js @@ -1,4 +1,13 @@ // Define class here +class HTMLElement { + constructor(tag, content) { + this.tag = tag; + this.content = content; + } + render() { + return `<${this.tag}>${this.content}`; + } +} // Export class here -export default {}; +export default HTMLElement; diff --git a/src/components/Untitled.code-workspace b/src/components/Untitled.code-workspace new file mode 100644 index 0000000..9e9e589 --- /dev/null +++ b/src/components/Untitled.code-workspace @@ -0,0 +1,7 @@ +{ + "folders": [ + { + "path": "/Users/i534961/Documents/JS" + } + ] +} \ No newline at end of file diff --git a/src/rolodex/rolodexPrinter.js b/src/rolodex/rolodexPrinter.js index 0f12389..a559697 100644 --- a/src/rolodex/rolodexPrinter.js +++ b/src/rolodex/rolodexPrinter.js @@ -1,11 +1,6 @@ import people from './people.json'; -people.forEach(function (person) { - const names = person.name.split(' '); - const firstName = names[0]; - const lastName = names[1]; - const email = person.email; - const phone = person.phone; - - console.log('First name: ' + firstName + '\nLast name: ' + lastName + '\nEmail: ' + email + '\nPhone number: ' + phone + '\n'); +people.forEach((element) => { + const [firstName, lastName] = element.name.split(' '); + console.log(`First name: ${firstName}\nLast name: ${lastName}\nEmail: ${element.email}\nPhone number: ${element.phone}\n`); }); diff --git a/src/timer/Timer.js b/src/timer/Timer.js index 2453ed9..b418db5 100644 --- a/src/timer/Timer.js +++ b/src/timer/Timer.js @@ -1,17 +1,17 @@ -function Timer(seconds) { - this.seconds = seconds; -} +class Timer { + constructor(seconds) { + this.seconds = seconds; + } -Timer.prototype.start = function () { - var instance = this; - var timerInterval = setInterval(function () { - if (instance.seconds === 0) { - clearInterval(timerInterval); - } - console.log(instance.seconds); - instance.seconds -= 1; - }, 1000); -}; + start() { + const timerInterval = setInterval(() => { + if (this.seconds === 0) { + clearInterval(timerInterval); + } + this.seconds -= 1; + }, 1000); + } +} export default Timer;