跳到主要内容

JavaScript 对象

对象是一组动态的键-值对组成的无序集合,每个键是一个字符串,而每个值是一个原始类型或其他对象(包括函数):

字面量

基本形式

其中 this 指向的是对象本身,而当存在原型且执行的是原型上的函数时,this 指向的仍然是对象而非原型。

const parent = {
value: 2,
method() {
return this.value + 1;
}
};

增强形式

  1. __proto__ 用于声明 JavaScript 原型(默认为 Object
  2. abc 用于描述 abc: abc 的键值对
  3. super(TODO)

方法

  • 访问属性:用 .,但如果属性名不是一个有效的变量名,只能用 ['xxx'] 来访问
    • 在查找该属性时,先从它自身拥有的属性开始,然后从原型链逐个向上寻找
  • 我们可以动态添加属性,也可以用 delete 删除属性;
  • 可以用 in 判断是否拥有某一属性;
  • 可以用 hasOwnProperty() 判断是否为自身拥有。