一、对象的引用和复制
赋值了对象的变量存储的不是对象本身,而是该对象"在内存中的地址",对象储存着变量的地址。
所以当一个对象变量被复制 ,其实是另一个对象复制了这个对象的引用,而该对象自身并没有被复制。
现在我们有了两个变量,它们保存的都是对同一个对象的引用,都作用在同一个对象上。
二、对象方法
作为对象属性的函数被称为 方法。
1、user.``sayHi
=
function``(``)
{
alert``(``"Hello!"``)``;
};
2、// 首先,声明函数
function
sayHi``(``)
{
alert``(``"Hello!"``)``;
}
// 然后将其作为一个方法添加
user.
sayHi =
sayHi;
3、let user={
sayHi
=
function``(``)
{
alert``(``"Hello!"``)``;
};
}
三、this
user.sayHi()
中的代码可能需要用到 user
的 name 属性。
为了访问对象,函数方法中可以使用 this
关键字。
this
的值就是在点之前的这个对象,即调用该方法的对象。
箭头函数没有自己的"this",如果我们在这样的函数中引用 this
,this
取决于外部"正常的"函数。