Javascript新对象引用

Pra*_*gus 4 javascript

创建对象的新实例的正确语法是什么,而不是指向原始对象的指针?这是我的例子:

var oItem = { element: null, colIndex: 0 };
var oInputs = { Qty: oItem, Tare: oItem, Rate: oItem, Total: oItem };
for (var oTitle in oInputs) {
    oInputs[oTitle].element = ...
Run Code Online (Sandbox Code Playgroud)

当我设置oInputs[oTitle].element任何oTitle它的值时,它设置它们的全部值.我知道javascript通过引用传递对象,所以我假设它是因为它们都指向同一个对象.我试过这个,但显然是错的.

var oInputs = { Qty: new oItem, Tare: new oItem, Rate: new oItem, Total: new oItem };
Run Code Online (Sandbox Code Playgroud)

提前致谢.

cgp*_*cgp 9

请执行下列操作:

function OItem() {
  this.colIndex = 0;
}

var oInputs = { Qty: new OItem(), Tare: new OItem(), Rate: new OItem(), Total: new OItem() };
Run Code Online (Sandbox Code Playgroud)

然后设置您的属性:

for (var oTitle in oInputs) {
    oInputs[oTitle].element = ...
Run Code Online (Sandbox Code Playgroud)