gpt4 book ai didi

javascript - 函数的赋值运算符

转载 作者:行者123 更新时间:2023-11-29 18:28:05 24 4
gpt4 key购买 nike

在处理方法、函数等时,我很难理解赋值运算符的用途。这是 w3 学校定义对象的示例

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

this.newlastname=newlastname;
}

这是实际的功能(放在其他地方)

function newlastname(new_lastname){
this.lastname=new_lastname;
}

你说 javascript 对我来说很奇怪

object.methodname = somefunctionname

有什么想法可以帮助我将其概念化吗?

最佳答案

您问题中的代码实际上与此相同:

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

//anonymous function assigned to newlastname property
this.newlastname = function(new_lastname) {
this.lastname = new_lastname;
};
}

person 是一个构造函数(您可以使用 new 运算符调用它来创建一个新实例)。 person 的每个实例都有三个属性,firstnameeyecolornewlastname

newlastname 属性是一个方法,因为它的值是一个函数。当您调用该方法时,调用该方法的 person 实例将获得一个 lastname 属性。

例如:

var me = new person("James", "Allardice", 22, "Brown");
me.lastname; //undefined
me.newlastname("Something");
me.lastname; //Something

这是可能的,因为在 JavaScript 中,函数是对象。

关于javascript - 函数的赋值运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11096329/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com