开发手册 欢迎您!
软件开发者资料库

JavaScript - 对象概述

JavaScript对象概述 - 从简单和简单的步骤学习Javascript从基本概念到高级概念,包括Javascript语法对象嵌入HTML验证Cookie正则表达式文字变量循环条件。

JavaScript是一种面向对象编程(OOP)语言。编程语言可以称为面向对象,如果它为开发人员提供四种基本功能并且减去;

  • 封装 : 将相关信息(无论是数据还是方法)存储在对象中的能力。

  • 聚合 :

  • 继承 : 一个类依赖另一个类(或类的数量)来处理它的一些属性和方法的能力。

  • 多态性 &减去;编写一种以各种不同方式工作的函数或方法的能力。

对象由属性组成。如果属性包含函数,则将其视为对象的方法,否则该属性将被视为属性。

对象属性

对象属性可以是三种基本数据类型中的任何一种,也可以是任何抽象数据类型,例如另一个对象。对象属性通常是在对象方法内部使用的变量,但也可以是整个页面中使用的全局可见变量。

向对象添加属性的语法是&减去;

  objectName.objectProperty = propertyValue;


例如 : 以下代码使用文档对象的"title"属性获取文档标题。

  var str = document.title;


对象方法

方法是让对象做某事或让某事做完的功能。函数和方法之间存在细微差别 - 函数是一个独立的语句单元,一个方法附加到一个对象,可以通过 this 关键字引用。

从显示对象内容到屏幕,再到对一组局部属性和参数执行复杂的数学运算,方法非常有用。

For例子 : 以下是一个简单示例,说明如何使用文档对象的 write()方法在文档上写入任何内容。

  document.write("这是测试");


用户定义的对象

所有用户定义的对象和内置对象都是名为

新算子

运算符用于创建实例一个东西。要创建一个对象, new 运算符后面跟着构造函数方法。

在下面的例子中,构造函数方法是Object(),Array(),和日期()。这些构造函数是内置的JavaScript函数。

  var employee = new Object();  var books = new Array("C ++","Perl","Java");  var day = new Date("1947-8-15");


Object()构造函数

构造函数是一个创建和初始化对象的函数。 JavaScript提供了一个名为 Object()的特殊构造函数来构建对象。 Object()构造函数的返回值被赋值给变量。

该变量包含对新对象的引用。分配给对象的属性不是变量,也不是使用 var 关键字定义的。

示例1

尝试以下示例;它演示了如何创建对象。

在线演示

         User-defined objects                    var book = new Object();   // Create the object         book.subject = "Perl";     // Assign properties to the object         book.author  = "Mohtashim";                                      document.write("Book name is : " + book.subject + "
");         document.write("Book author is : " + book.author + "
");            


输出

Book name is : Perl Book author is : Mohtashim


示例2

此示例演示如何使用用户定义函数创建对象。这里这个关键字用于引用已传递给函数的对象。

在线演示

         User-defined objects               function book(title, author) {            this.title = title;             this.author  = author;         }                                       var myBook = new book("Perl", "Mohtashim");         document.write("Book title is : " + myBook.title + "
");         document.write("Book author is : " + myBook.author + "
");               


输出

Book title is : Perl Book author is : Mohtashim


定义对象的方法

前面的例子演示了构造函数如何创建对象和赋值属性。但是我们需要通过为它分配方法来完成对象的定义。

示例

尝试以下示例;它显示了如何添加一个函数和一个对象。

在线演示

         User-defined objects               // 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.         }                                       var myBook = new book("Perl", "Mohtashim");         myBook.addPrice(100);                  document.write("Book title is : " + myBook.title + "
");         document.write("Book author is : " + myBook.author + "
");         document.write("Book price is : " + myBook.price + "
");               


输出

Book title is : Perl Book author is : Mohtashim Book price is : 100


'with'关键字

'with'关键字用作引用对象属性或方法的一种简写。

指定为的参数的对象成为后续块的持续时间的默认对象。可以在不命名对象的情况下使用对象的属性和方法。

语法

with object的语法如下 :

with (object) {   properties used without the object name and dot}


示例

尝试以下示例。

在线演示

      User-defined objects                  // 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.         }                                       var myBook = new book("Perl", "Mohtashim");         myBook.addPrice(100);                  document.write("Book title is : " + myBook.title + "
");         document.write("Book author is : " + myBook.author + "
");         document.write("Book price is : " + myBook.price + "
");               


输出

 Book title is : Perl Book author is : Mohtashim Book price is : 100


JavaScript 原生对象

JavaScript有几个内置或原生对象。这些对象可以在程序中的任何位置访问,并且可以在任何操作系统中运行的任何浏览器中以相同的方式工作。