HTML Dog
跳至导航

对象

JavaScript 对象就像现实生活中的对象;它们有属性和能力。从这个意义上说,JavaScript 对象是命名的属性方法(函数)的集合。对象可以存储在变量中,并且可以使用点语法访问属性和方法。

例如,一个人有姓名和年龄,并且可以说话、移动或学习 JavaScript。姓名和年龄是人的属性,本质上是数据片段。说话、移动和学习更像是函数——涉及一些复杂的行为。当 JavaScript 对象具有这种能力时,它就被称为方法

变量可以包含对象,对象的创建使用花括号表示的特殊语法完成


var jedi = {
    name: "Yoda",
    age: 899,
    talk: function () { alert("another... Sky... walk..."); }
};

绝地武士的 nameage 是属性——它们本质上是对象内的变量,可以存储变量可以存储的任何内容。talk 是一个保存函数的属性——一个方法。

您可以使用点语法从对象中获取数据


jedi.name;

Yoda

jedi.age;

899

jedi.talk();

//produces an alert box

您也可以重新分配对象的属性


jedi.name = "Mace Windu";

并动态添加新属性


jedi.lightsaber = "purple";

属性可以是任何类型的数据,包括对象和数组。将一个对象添加为另一个对象的属性会创建一个嵌套对象


var person = {
    age: 122
};

person.name = {
    first: "Jeanne",
    last: "Calment"
};

也可以创建一个空对象并为其添加属性和方法


var dog = {};

dog.bark = function () { alert("Woof!"); };