Java脚本:关于对象中的函数

Java script:About function within an object

本文关键字:对象 函数 脚本 于对象 Java      更新时间:2023-09-26

不确定这是用来做什么的:"this.changeName=changeName;"如果我删除这一行,代码就无法正常工作。但这句话似乎毫无作用。

<!DOCTYPE html>
<html>
<body>
<script>
function person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
this.changeName = changeName;
function changeName(name)
{
this.lastname=name;
}
}
myMother=new person("Sally","Rally",48,"green");
myMother.changeName("Doe");
document.write(myMother.changeName);
</script>
</body>
</html>

this.changename将专用changeName函数分配给Objects实例。因此,当您创建类型为person的新对象时,person具有方法changename,因为this.changenamechangeName指定为要执行的函数。

尝试:

function person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
this.changeName = function(name) {
this.lastname=name;
}
}

您也可以使用:

this.changeName = function(name)
{
this.lastname=name;
}

函数changeName是对象person上的一个方法,当您说this.changeName=更改名称;这意味着人对象。

在这里调用之前,您不会使用该函数myMother.changeName("Doe");

您将姓氏更改为"Doe",因此myMother.lastname="Doe"

我有点重复其他人的说法,但希望更清楚。