JavaScript Objects
Real Life Objects, Properties, and Methods
In real life, a car is an object.A car has properties like weight and color, and methods like start and stop:
Object | Properties | Methods |
---|---|---|
![]() | car.model = 500 car.weight = 850kg car.color = white | car.start() car.drive() car.brake() car.stop() |
All cars have the same methods, but the methods are performed at different times.
JavaScript Objects
You have already learned that JavaScript variables are containers for data values.This code assigns a simple value (Fiat) to a variable named car:
var car = "Fiat";
This code assigns many values (Fiat, 500, white) to a variable named car:
var car = {type:"Fiat", model:"500", color:"white"};
JavaScript objects are containers for named values.
Object Properties
The name:values pairs (in JavaScript objects) are called properties.var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Property | Property Value |
---|---|
firstName | John |
lastName | Doe |
age | 50 |
eyeColor | blue |
Object Methods
Methods are actions that can be performed on objects.Methods are stored in properties as function definitions.
Property | Property Value |
---|---|
firstName | John |
lastName | Doe |
age | 50 |
eyeColor | blue |
fullName | function() {return this.firstName + " " + this.lastName;} |
JavaScript objects are containers for named values called properties or methods.
Object Definition
You define (and create) a JavaScript object with an object literal:Example
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Example
var person = {
firstName:"John",
lastName:"Doe",
age:50,
eyeColor:"blue"
};
Accessing Object Properties
You can access object properties in two ways:objectName.propertyName
objectName["propertyName"]
Example1
person.lastName;
Example2
person["lastName"];
Accessing Object Methods
You access an object method with the following syntax:objectName.methodName()
Example
name = person.fullName();
Example
name = person.fullName;
A method is actually a function definition stored as a property value.
Do Not Declare Strings, Numbers, and Booleans as Objects!
When a JavaScript variable is declared with the keyword "new", the variable is created as an object:var x = new String(); // Declares x as a String objectvar y = new Number(); // Declares y as a Number objectvar z = new Boolean(); // Declares z as a Boolean object
You will learn more about objects later in this tutorial.