JavaScript 对象

JavaScript 对象

JavaScript对象是具有状态和行为(属性和方法)的实体。例如:汽车、钢笔、自行车、椅子、杯子、键盘、显示器等。

JavaScript是一种基于对象的语言。在JavaScript中,一切都是对象。

JavaScript是基于模板而非类的。在这里,我们不创建类来获取对象,而是直接创建对象。

在JavaScript中创建对象

有三种方式可以创建对象。

  1. 通过对象字面量
  2. 直接创建Object的实例(使用new关键字)
  3. 使用对象构造函数(使用new关键字)

1)通过对象字面量创建JavaScript对象

使用对象字面量创建对象的语法如下:

object={property1:value1,property2:value2.....propertyN:valueN}

如你所见,属性和值之间用 :(冒号)分隔。

让我们来看看JavaScript中创建对象的简单示例。

<script>
emp={id:102,name:"Shyam Kumar",salary:40000}
document.write(emp.id+" "+emp.name+" "+emp.salary);
</script>

2) 通过创建对象的实例

直接创建对象的语法如下:

var objectname=new Object();

在这里, new关键字 用于创建对象。

让我们看看直接创建对象的例子。

<script>
var emp=new Object();
emp.id=101;
emp.name="Ravi Malik";
emp.salary=50000;
document.write(emp.id+" "+emp.name+" "+emp.salary);
</script>

3) 使用一个对象构造函数

在这里,您需要创建带参数的函数。使用this关键字可以将每个参数值分配给当前对象。

this关键字 指的是当前对象。

创建对象的例子如下。

<script>
function emp(id,name,salary){
this.id=id;
this.name=name;
this.salary=salary;
}
e=new emp(103,"Vimal Jaiswal",30000);

document.write(e.id+" "+e.name+" "+e.salary);
</script>

在JavaScript对象中定义方法

我们可以在JavaScript对象中定义方法。但是在定义method之前,我们需要在函数中添加与method同名的属性。

下面给出了在object中定义method的例子。

<script>
function emp(id,name,salary){
this.id=id;
this.name=name;
this.salary=salary;

this.changeSalary=changeSalary;
function changeSalary(otherSalary){
this.salary=otherSalary;
}
}
e=new emp(103,"Sonoo Jaiswal",30000);
document.write(e.id+" "+e.name+" "+e.salary);
e.changeSalary(45000);
document.write(""+e.id+" "+e.name+" "+e.salary);
</script>

JavaScript对象方法

Object的各种方法如下:

序号 方法 描述
1 Object.assign() 此方法用于将可枚举和自有属性从源对象复制到目标对象
2 Object.create() 此方法用于创建一个新对象,并指定其原型对象和属性。
3 Object.defineProperty() 此方法用于描述属性的某些行为特性。
4 Object.defineProperties() 此方法用于创建或配置多个对象属性。
5 Object.entries() 此方法返回一个由键值对数组组成的数组。
6 Object.freeze() 此方法阻止已存在的属性被删除。
7 Object.getOwnPropertyDescriptor() 此方法返回指定对象的指定属性的属性描述符。
8 Object.getOwnPropertyDescriptors() 此方法返回给定对象的所有自有属性描述符。
9 Object.getOwnPropertyNames() 此方法返回一个包含所有(可枚举或不可枚举)属性的数组。
10 Object.getOwnPropertySymbols() 此方法返回一个包含所有自有符号键属性的数组。
11 Object.getPrototypeOf() 此方法返回指定对象的原型。
12 Object.is() 此方法确定两个值是否相同。
13 Object.isExtensible() 此方法确定一个对象是否可扩展。
14 Object.isFrozen() 此方法确定一个对象是否已被冻结。
15 Object.isSealed() 此方法确定一个对象是否已被封闭。
16 Object.keys() 此方法返回给定对象的所有自己的属性名的数组。
17 Object.preventExtensions() 此方法用于阻止对象的任何扩展。
18 Object.seal() 此方法阻止添加新属性,并将所有现有属性标记为不可配置。
19 Object.setPrototypeOf() 此方法将指定对象的原型设置为另一个对象。
20 Object.values() 此方法返回一个值数组。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程