0% found this document useful (0 votes)
2 views

12_JS_Objects

JavaScript is an Object Oriented Programming language that supports encapsulation, aggregation, inheritance, and polymorphism. Objects in JavaScript consist of properties and methods, with the ability to create user-defined objects using constructors. The document also covers the use of the 'with' keyword for shorthand property access and lists several built-in JavaScript native objects.

Uploaded by

Chenuka
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

12_JS_Objects

JavaScript is an Object Oriented Programming language that supports encapsulation, aggregation, inheritance, and polymorphism. Objects in JavaScript consist of properties and methods, with the ability to create user-defined objects using constructors. The document also covers the use of the 'with' keyword for shorthand property access and lists several built-in JavaScript native objects.

Uploaded by

Chenuka
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

JavaScript - Objects Overview

JavaScript is an Object Oriented Programming (OOP) language. A programming


language can be called object-oriented if it provides four basic capabilities to developers

• Encapsulation − the capability to store related information, whether data or methods,
together in an object.
• Aggregation − the capability to store one object inside another object.
• Inheritance − the capability of a class to rely upon another class (or number of classes) for
some of its properties and methods.
• Polymorphism − the capability to write one function or method that works in a variety of
different ways.
Objects are composed of attributes. If an attribute contains a function, it is considered to
be a method of the object, otherwise the attribute is considered a property.

Object Properties
Object properties can be any of the three primitive data types, or any of the abstract data
types, such as another object. Object properties are usually variables that are used
internally in the object's methods, but can also be globally visible variables that are used
throughout the page.
The syntax for adding a property to an object is −
objectName.objectProperty = propertyValue;
For example − The following code gets the document title using the "title" property of
the document object.
var str = document.title;
Object Methods
Methods are the functions that let the object do something or let something be done to
it. There is a small difference between a function and a method – at a function is a
standalone unit of statements and a method is attached to an object and can be
referenced by the this keyword.
Methods are useful for everything from displaying the contents of the object to the screen
to performing complex mathematical operations on a group of local properties and
parameters.
For example − Following is a simple example to show how to use the write() method of
document object to write any content on the document.
document.write("This is test");
User-Defined Objects
All user-defined objects and built-in objects are descendants of an object called Object.
The new Operator
The new operator is used to create an instance of an object. To create an object,
the new operator is followed by the constructor method.
In the following example, the constructor methods are Object(), Array(), and Date().
These constructors are built-in JavaScript functions.
var employee = new Object();
var books = new Array("C++", "Perl", "Java");
var day = new Date("August 15, 1947");
The Object() Constructor
A constructor is a function that creates and initializes an object. JavaScript provides a
special constructor function called Object() to build the object. The return value of
the Object() constructor is assigned to a variable.
The variable contains a reference to the new object. The properties assigned to the
object are not variables and are not defined with the var keyword.
Example 1
Try the following example; it demonstrates how to create an Object.
<html>
<head>
<title>User-defined objects</title>
<script type = "text/javascript">
var book = new Object(); // Create the object
book.subject = "Perl"; // Assign properties to the
object
book.author = "Mohtashim";
</script>
</head>

<body>
<script type = "text/javascript">
document.write("Book name is : " + book.subject + "<br>");
document.write("Book author is : " + book.author +
"<br>");
</script>
</body>
</html>
Output
Book name is : Perl
Book author is : Mohtashim
Example 2
This example demonstrates how to create an object with a User-Defined Function.
Here this keyword is used to refer to the object that has been passed to a function.
<html>
<head>
<title>User-defined objects</title>
<script type = "text/javascript">
function book(title, author) {
this.title = title;
this.author = author;
}
</script>
</head>

<body>
<script type = "text/javascript">
var myBook = new book("Perl", "Mohtashim");
document.write("Book title is : " + myBook.title +
"<br>");
document.write("Book author is : " + myBook.author +
"<br>");
</script>
</body>
</html>
Output
Book title is : Perl
Book author is : Mohtashim
Defining Methods for an Object
The previous examples demonstrate how the constructor creates the object and assigns
properties. But we need to complete the definition of an object by assigning methods to
it.
Example
Try the following example; it shows how to add a function along with an object.
<html>

<head>
<title>User-defined objects</title>
<script type = "text/javascript">
// Define a function which will work as a method
function addPrice(amount) {
this.price = amount;
}

function book(title, author) {


this.title = title;
this.author = author;
this.addPrice = addPrice; // Assign that method as
property.
}
</script>
</head>

<body>
<script type = "text/javascript">
var myBook = new book("Perl", "Mohtashim");
myBook.addPrice(100);

document.write("Book title is : " + myBook.title +


"<br>");
document.write("Book author is : " + myBook.author +
"<br>");
document.write("Book price is : " + myBook.price +
"<br>");
</script>
</body>
</html>
Output
Book title is : Perl
Book author is : Mohtashim
Book price is : 100
The 'with' Keyword
The ‘with’ keyword is used as a kind of shorthand for referencing an object's properties
or methods.
The object specified as an argument to with becomes the default object for the duration
of the block that follows. The properties and methods for the object can be used without
naming the object.
Syntax
The syntax for with object is as follows −
with (object) {
properties used without the object name and dot
}
Example
Try the following example.
<html>
<head>
<title>User-defined objects</title>
<script type = "text/javascript">
// Define a function which will work as a method
function addPrice(amount) {
with(this) {
price = amount;
}
}
function book(title, author) {
this.title = title;
this.author = author;
this.price = 0;
this.addPrice = addPrice; // Assign that method as
property.
}
</script>
</head>

<body>
<script type = "text/javascript">
var myBook = new book("Perl", "Mohtashim");
myBook.addPrice(100);

document.write("Book title is : " + myBook.title +


"<br>");
document.write("Book author is : " + myBook.author +
"<br>");
document.write("Book price is : " + myBook.price +
"<br>");
</script>
</body>
</html>
Output
Book title is : Perl
Book author is : Mohtashim
Book price is : 100
JavaScript Native Objects
JavaScript has several built-in or native objects. These objects are accessible anywhere
in your program and will work the same way in any browser running in any operating
system.
Here is the list of all important JavaScript Native Objects −
• JavaScript Number Object
• JavaScript Boolean Object
• JavaScript String Object
• JavaScript Array Object
• JavaScript Date Object
• JavaScript Math Object
• JavaScript RegExp Object

You might also like