当前位置: 首页 > 知识库问答 >
问题:

如何在JS[重复]中引用当前对象的属性

商嘉木
2023-03-14

可能重复:
对象文字声明中的自引用

我在JS中有一些像这个例子这样的简单对象:

var object = {
 firstname : 'john',
 lastname : 'paul',
 wholename : firstname + lastname
}

这个简单的东西不起作用;john和paul在wholename中未定义,因此我尝试使用“this”运算符,该运算符仅在执行函数(getWholeName(){return this.firstName+this.lastName})时才起作用。但是如果我要用一个变量,而不是函数,我该怎么做呢?我还尝试了object.firstname+object.lastname,但没有效果。

共有1个答案

翟永春
2023-03-14

无法引用对象,但可以动态添加属性:

var object = { 
    firstname : 'john', 
    lastname : 'paul'
};

object.wholename = object.firstname + object.lastname;

编辑:

为什么不把它包装在函数中呢?

var makePerson = function (firstname, lastname) {
    return {
        firstname: firstname,
        lastname: lastname,
        wholename: firstname + lastname  // refers to the parameters
    };
};

var object = makePerson('john', 'paul');
 类似资料:
  • 我对编程很陌生,我找不到我的问题的解决方案,你能给我解决方案吗? 我有这个JSON文件: 在我的js中需要类似这样的东西(但我想导入我的JSON以获得像这样的数组): 我不知道不使用jQuery该怎么做。 我已经试过了: 这几乎是我想要的,但当我在代码中使用它时,它不起作用,因为我不想要对象,而是像上面所说的和数组。

  • 我有一个这样定义的类: 现在我有一个项目对象列表,现在我想找到所有项目的总价。在Java8中我们如何做到这一点? 如果列表是简单的整数,那么我们在这里给出了解决方案--如何用java流求和整数列表?

  • 我是Rust的新手。我的背景是Java。我正在努力解决以下问题。 我有一个,它是为和

  • 问题内容: 我希望Selenium通过箭头键浏览菜单-首先单击顶部菜单项,然后按“ DOWN”,“ DOWN”,… 问题是您必须始终提供特定的元素才能将“ DOWN”发送到。 有什么方法可以获取当前元素? 我试过了: 但它表示该表达式无法识别或未返回正确的对象。 我希望我错过了一些愚蠢的把戏。 问题答案: 没有比访问更直接的方法了

  • 问题内容: 我希望Selenium通过箭头键浏览菜单-首先单击顶部菜单项,然后按“ DOWN”,“ DOWN”,… 问题是您必须始终提供特定的元素才能将“ DOWN”发送到。 有什么方法可以获取当前元素? 我试过了: 但它表示该表达式无法识别或未返回正确的对象。 我希望我缺少一些愚蠢的把戏。 问题答案: 不知道比访问更直接的方法 如何测试Selenium RC中关注的元素?

  • 我想创建一个JS函数,它接受两个参数:一个对象和一个属性。如果对象具有给定的属性,则函数应将其从对象中移除,并返回true。 这是我所能做到的,但它在测试用例中不断返回false。我相信是因为“obj.prop”部分没有正确捕捉——但不确定原因。 任何帮助都将不胜感激!