Created
November 30, 2018 06:41
-
-
Save krfong916/5493f5c99d447aaf99868cbd3492afa1 to your computer and use it in GitHub Desktop.
prototypal object creation with change of property
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| function sideEffects() { | |
| console.log("this will have a side effect because thats how the object prototype mechanism just works"); | |
| } | |
| var User = function({first_name, last_name, language, num_friends, num_reports, college, active}) { | |
| var obj = Object.create(User.prototype) | |
| obj.first_name = first_name | |
| obj.last_name = last_name | |
| obj.language = language | |
| obj.num_friends = num_friends | |
| obj.num_reports = num_reports | |
| obj.college = college | |
| obj.active = active | |
| obj.greeting = 'hello!' | |
| return obj; | |
| } | |
| User.prototype.greeting = function() { | |
| console.log(this.greeting) | |
| } | |
| User.prototype.changeGreeting = function(greeting) { | |
| this.greeting = greeting | |
| console.log(this.greeting); | |
| } | |
| let sign_up_object = { | |
| first_name: 'Kyle', | |
| last_name: 'Fong', | |
| language: 'English', | |
| num_friends: '0', | |
| num_reports: '0', | |
| college: 'Nine', | |
| active: 'Yes' | |
| } | |
| var new_user = new User(sign_up_object) | |
| new_user.greeting | |
| var newGreeting = "Wus gucci and gabbbana"; | |
| new_user.changeGreeting() | |
| new_user.greeting | |
| User.prototype = new sideEffects(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment