- Getting Started
- Variables and Types
- Arrays
- Manipulating Arrays
- Operators
- Conditions
- Loops
- Objects
- Functions
- Callbacks
-
Object-Oriented JavaScript - Function Context
- Inheritance
Based on Javascript Tutorial
Object-Oriented JavaScript
JavaScript uses functions as classes to create objects using the new
keyword. Here is an example:
function Person(firstName, lastName) {
// construct the object using the arguments
this.firstName = firstName;
this.lastName = lastName;
// a method which returns the full name
this.fullName = function() {
return this.firstName + " " + this.lastName;
}
}
var myPerson = new Person("John", "Smith");
print(myPerson.fullName()); // outputs "John Smith"
Creating an object using the new
keyword is the same as writing the following code:
var myPerson = {
firstName : "John",
lastName : "Smith",
fullName : function()
{
return this.firstName + " " + this.lastName;
}
}
The difference between the two methods of creating objects is that the first method uses a class to define the object and then the new
keyword to instantiate it, and the second method immediately creates an instance of the object.
Challenge
Create a class called Person which accepts the name of a person as a string, and his/her age as a number.
The Person class should have a method called describe
which returns a string with the following syntax: "name
, age
years old". So for example, if John is 19 years old then the function describe
of his object will return "John, 19 years old".
Please sign in or sign up to submit answers.
Alternatively, you can try out Learneroo before signing up.