From 4f623e21c31357ca77e70062c248dc13328e123c Mon Sep 17 00:00:00 2001 From: Fletcher Bonds Date: Sun, 12 Apr 2020 15:35:11 -0700 Subject: [PATCH 1/2] saving work in progress --- src/components/DivElement.js | 9 +++++++-- src/components/HTMLElement.js | 12 +++++++++++- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/src/components/DivElement.js b/src/components/DivElement.js index 7e22bcb..8d683e7 100644 --- a/src/components/DivElement.js +++ b/src/components/DivElement.js @@ -1,5 +1,10 @@ // Import HTMLElement here - +import * as 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..abeb331 100644 --- a/src/components/HTMLElement.js +++ b/src/components/HTMLElement.js @@ -1,4 +1,14 @@ // 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 }; From 00400c80ba1abe2035e7d61847406f147f791f3d Mon Sep 17 00:00:00 2001 From: Fletcher Bonds Date: Sun, 12 Apr 2020 17:21:08 -0700 Subject: [PATCH 2/2] homework complete --- src/components/DivElement.js | 7 +++++-- src/components/HTMLElement.js | 2 +- src/rolodex/rolodexPrinter.js | 13 ++++++------- src/timer/Timer.js | 27 +++++++++++++-------------- 4 files changed, 25 insertions(+), 24 deletions(-) diff --git a/src/components/DivElement.js b/src/components/DivElement.js index 8d683e7..40569e3 100644 --- a/src/components/DivElement.js +++ b/src/components/DivElement.js @@ -1,10 +1,13 @@ // Import HTMLElement here -import * as HTMLElement from './HTMLElement'; +import HTMLElement from './HTMLElement'; // Define class here class DivElement extends HTMLElement { constructor(content) { - super('div', content); + super(content); + this.tag = 'div'; + this.content = content; } } + // Export class here export default DivElement; diff --git a/src/components/HTMLElement.js b/src/components/HTMLElement.js index abeb331..a9b6e1c 100644 --- a/src/components/HTMLElement.js +++ b/src/components/HTMLElement.js @@ -11,4 +11,4 @@ class HTMLElement { } // Export class here -export default { HTMLElement }; +export default HTMLElement; diff --git a/src/rolodex/rolodexPrinter.js b/src/rolodex/rolodexPrinter.js index 0f12389..a5ad614 100644 --- a/src/rolodex/rolodexPrinter.js +++ b/src/rolodex/rolodexPrinter.js @@ -1,11 +1,10 @@ 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; +people.forEach(([name, email, phone] = [people.name, people.email, people.phone]) => { + const { firstName, lastName } = name.split(' '); - console.log('First name: ' + firstName + '\nLast name: ' + lastName + '\nEmail: ' + email + '\nPhone number: ' + phone + '\n'); + return `First name: ${firstName} + Last name: ${lastName} + Email: ${email} + Phone number: ${phone}`; }); diff --git a/src/timer/Timer.js b/src/timer/Timer.js index 2453ed9..41b6a13 100644 --- a/src/timer/Timer.js +++ b/src/timer/Timer.js @@ -1,17 +1,16 @@ -function Timer(seconds) { - this.seconds = seconds; -} - -Timer.prototype.start = function () { - var instance = this; - var timerInterval = setInterval(function () { - if (instance.seconds === 0) { - clearInterval(timerInterval); - } +class Timer { + constructor(seconds) { + this.seconds = seconds; + } - 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;