在发表任何评论/回答/投票之前请考虑两件事
对象在数组内
我知道我可以通过
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/