javascript - 如何在初始化时通过操作其他键来直接获取相同的对象属性

标签 javascript arrays object this javascript-objects

在发表任何评论/回答/投票之前请考虑两件事

  1. 对象在数组内

  2. 我知道我可以通过 constructor 来实现它或者 function通过绑定(bind)this但我有一个条件 我必须 为了实现上述目标,重写了近 100 行现有代码 功能。我搜索了几乎所有内容,现在从 Java 询问 脚本爱好者对同一域的所有可能选项 看下面的物体。

问题:我只想total值等于 7在当前示例中为 NAN

var demoObj = [{
    a: 2,
    b: 5,
    total: this.a * this.b 
}]

我怎样才能实现它?请回答任何可能的解决方案,无论我将管理多么丑陋的代码。

编辑 有人试图将其标记为与评论中给定链接重复,但这是不正确的,因为给出的答案不符合我的需求。即使在接受的答案中,如果您更改 a 的值或b初始化后total将更改不适合我的情况!

最佳答案

您可以使用 IIFE 还是它太丑陋/超出了您的问题范围?

var demoObj = [
  ((a, b) => ({ a, b, total: a * b }))(5, 2)
]

console.log(demoObj)
//  [
//    {
//      "a": 5,
//      "b": 7,
//      "total": 10
//    }
//  ]

关于javascript - 如何在初始化时通过操作其他键来直接获取相同的对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54323837/

相关文章:

javascript - jQuery:如果在链中?

C 语言 -> 将段落中的单词分开

arrays - 为什么字符串需要初始化一个初始值?

php - 如何从值中获取对象 "key"?是否有类似 array_search 的对象?

javascript - 如果值匹配任何值(包括嵌套对象值),则返回 true

javascript - 当排序很重要时,使用 for..in 迭代 JavaScript 对象属性和数组

javascript - 使用ajax使用Highcharts动态绘制图表

javascript - pdfmake:如何创建具有不同方向的多页 pdf?

java - 计算整数的位数

javascript - 在子链接页面上时触发父链接的事件类