JavaScript Objects
Earlier in this tutorial we have seen that JavaScript has several built-in objects, like String, Date, Array, and more. In addition to these built-in objects, you can also create your own.An object is just a special kind of data, with a collection of properties and methods.
Let's illustrate with an example: A person is an object. Properties are the values associated with the object. The persons' properties include name, height, weight, age, skin tone, eye color, etc. All persons have these properties, but the values of those properties will differ from person to person. Objects also have methods. Methods are the actions that can be performed on objects. The persons' methods could be eat(), sleep(), work(), play(), etc.
Properties
The syntax for accessing a property of an object is:objName.propName |
personObj.firstname="John"; personObj.lastname="Doe"; personObj.age=30; personObj.eyecolor="blue"; document.write(personObj.firstname); |
John |
Methods
An object can also contain methods.You can call a method with the following syntax:
objName.methodName() |
To call a method called sleep() for the personObj:
personObj.sleep(); |
Creating Your Own Objects
There are different ways to create a new object:1. Create a direct instance of an object
The following code creates an new instance of an object, and adds four properties to it:
personObj=new Object(); personObj.firstname="John"; personObj.lastname="Doe"; personObj.age=50; personObj.eyecolor="blue"; |
personObj={firstname:"John",lastname:"Doe",age:50,eyecolor:"blue"}; |
personObj.eat=eat; |
Create a function that construct objects:
function person(firstname,lastname,age,eyecolor) { this.firstname=firstname; this.lastname=lastname; this.age=age; this.eyecolor=eyecolor; } |
Once you have the object constructor, you can create new instances of the object, like this:
var myFather=new person("John","Doe",50,"blue"); var myMother=new person("Sally","Rally",48,"green"); |
function person(firstname,lastname,age,eyecolor) { this.firstname=firstname; this.lastname=lastname; this.age=age; this.eyecolor=eyecolor; this.newlastname=newlastname; } |
function newlastname(new_lastname) { this.lastname=new_lastname; } |
No comments:
Post a Comment