📜  JavaScript对象(1)

📅  最后修改于: 2023-12-03 14:42:41.379000             🧑  作者: Mango

JavaScript对象

JavaScript对象是JavaScript编程语言中的一种基本数据类型。对象是由属性组成的,每个属性都有一个名字和一个值。对象的值可以是JavaScript中的任何类型,包括数字、字符串、布尔值、函数和其他对象。

创建对象

在JavaScript中,可以使用对象字面量或构造函数创建对象。

对象字面量

使用对象字面量创建对象是一种简便方法。对象字面量是由一对花括号包围的零个或多个属性名-值对组成,每个属性名和值之间用冒号隔开,属性之间用逗号隔开。

const person = {
  name: 'Tom',
  age: 25,
  sayHello: function() {
    console.log('Hello from ' + this.name);
  }
};
构造函数

使用构造函数创建对象时,首先要定义一个构造函数,然后使用关键字 new 创建对象。构造函数本身其实就是一个普通的 JavaScript 函数,在函数内部使用 this 关键字指代新创建的对象。构造函数通常会定义一个或多个属性以及方法。

function Person(name, age) {
  this.name = name;
  this.age = age;
  
  this.sayHello = function() {
    console.log('Hello from ' + this.name);
  }
}

const tom = new Person('Tom', 25);
访问对象属性

对象的属性可以通过点运算符或方括号运算符来访问。

person.name;  // 'Tom'
person['age'];  // 25
删除对象属性

使用 delete 关键字可以删除对象的属性。

delete person.age;
遍历对象属性

可以使用 for...in 循环遍历对象的属性。

for (const prop in person) {
  console.log(prop + ': ' + typeof person[prop]);
}
typeof和instanceof运算符

可以使用 typeof 运算符来确定一个值是否为对象。但是无法判断一个对象是什么类型的对象。

instanceof 运算符可以用于判断一个对象是否是某个构造函数的实例。

console.log(typeof person);  // 'object'
console.log(person instanceof Person);  // true