例如,我有这样的代码:
var Player = function(param){
var self = {
x:0,
y:0,
spdX:0,
spdY:0,
id:"",
}
self.hp = 24;
}
我是否需要在var self = {}
内添加hp?
答案 0 :(得分:1)
我相信其他人误解了这个问题。如果我理解正确,您会询问动态向现有对象添加属性的任何潜在问题(与首次声明对象时相比)。答案是这样做很好,是常见的JS实践,应该没有负面的性能影响。
如果您来自静态类型语言背景,这是一个非常合理的问题。例如,在TypeScript中,您无法在定义对象后添加属性(请参阅this question)。这样做是为了:
类型安全(远方主要原因)
表演(可能)。
答案 1 :(得分:1)
它完全没问题。放松。你的代码不会爆炸。呼吸。呼吸!好的,既然你已经安定下来......
性能方面,它是相同的*:Performance test。
语法明智,它们都用于主要文档站点:developer.mozilla.org& W3Schools
*尽可能接近