1、对象(Object)属性
对象属性可以是这三种基本数据类型中的任何一种,也可以是抽象数据类型中的任何一种,例如,另一个对象。对象属性通常是对象方法内部使用的变量,但也可以是整个页面使用的全局可见变量。
向对象添加属性的语法:
objectName.objectProperty = propertyValue;
例如,
下面的代码使用document
对象的“title”属性获取文档标题。
var str = document.title;
2、对象(Object)方法
方法是让对象做某事或让某事被做的函数。函数和方法之间有一个微小的区别,函数是一个独立的语句单元,而方法是附加到一个对象上的,可以通过this关键字引用。方法对于从显示到屏幕的对象内容到对一组局部属性和参数执行复杂的数学操作的所有事情都很有用。
例如,
使用document对象的write()方法在文档上输出内容:
document.write("www.cjavapy.com");
3、用户定义的对象(Object)
所有用户定义的对象和内置对象都是名为object的对象的后代。有着继承关系。
1)new操作符
new操作符用于创建对象的实例。要创建对象,new操作符后面跟着构造函数方法。
在下面的例子中,构造函数方法是Object()
、Array()
和Date()
。这些构造函数是内置的JavaScript函数。
例如,
var employee = new Object();
var books = new Array("C#", "Python", "Java");
var day = new Date("August 15, 2021");
2)Object()构造函数
构造函数是用来创建和初始化对象的函数。JavaScript提供了一个名为Object()的特殊构造函数来构建对象。Object()构造函数的返回值被赋给一个变量。
该变量包含对新对象的引用。分配给对象的属性不是变量,也不是用var关键字定义的。
例如,
下面示例演示如何创建一个对象:
<html> <head> <title>User-defined objects</title> <script type = "text/javascript"> var site= new Object(); // 创建对象 site.subject = "C#"; // 为对象分配属性 site.author = "Levi"; </script> </head> <body> <script type = "text/javascript"> document.write("网站的主题: " +site.subject + "<br>"); document.write("网站的作者 : " + site.author + "<br>"); </script> </body> </html>
3、对象(Object)定义方法
需要通过给对象赋值方法来完成对象的定义。
例如,
示例演示添加一个函数和一个对象:
<html> <head> <title>User-defined objects</title> <script type = "text/javascript"> // 定义一个作为方法工作的函数 function addPrice(amount) { this.price = amount; } function book(title, author) { this.title = title; this.author = author; this.addPrice = addPrice; // 将该方法指定为属性。 } </script> </head> <body> <script type = "text/javascript"> var myBook = new book("C#", "Levi"); 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>
4、with 关键字
with
关键字被用作引用对象的属性或方法的一种速记。
作为with
参数指定的对象在接下来的块期间成为默认对象。对象的属性和方法可以在不命名对象的情况下使用。
语法
with (object) { 没有对象名称和点的属性 }
例如,
<html> <head> <title>User-defined objects</title> <script type = "text/javascript"> // 定义一个作为方法工作的函数 function addPrice(amount) { with(this) { price = amount; } } function book(title, author) { this.title = title; this.author = author; this.price = 0; this.addPrice = addPrice; // 将该方法指定为属性。 } </script> </head> <body> <script type = "text/javascript"> var myBook = new book("cjavapy", "Levi"); 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>
5、JavaScript原生对象
JavaScript有几个内置或本地对象。这些对象可以在程序的任何地方访问,并且在运行于任何操作系统的任何浏览器中以相同的方式工作。
以下是所有重要的JavaScript原生对象的列表: