繁体   English   中英

在JavaScript中动态重命名或设置对象名称

[英]Renaming or setting object names dynamically in JavaScript

我对下面设置的JavaScript非常陌生,可以将键和值用于需要工作的不同项目。 使用变量来区分每个项目(也就是它),所有值都将是相同的,但是我想标识我也在变量名中使用的每个项目(itemObject)。

缩写示例::

function objFunction (itemName) {
    itemObject = {
        object1Data: [{
            data1: {
                prop1: 'value',
                prop2: 'value'
            },
            data2: {
                prop1: itemName + 'some string'
                prop2: itemNamevariable
            }
        }],
        object2: {
            data: {
                prop1: itemName,
                prop2:  itemName + 'some string'
            }
        }
     }
}

还是我最好使用构造函数或其他方法?

function ObjFunction (itemName) {
    this.itemObject = {
        bject1Data: [{
            data1: {
                prop1: 'value',
                prop2: 'value'
            },
            data2: {
                prop1: itemName + 'some string',
                prop2: itemName
            }
        }],
        object2: {
            data: {
                prop1:  itemName,
                prop2:  itemName + 'some string'
            }
        }
     }
}

var item1 = new ObjFunction('item1Name');

我更喜欢第一个答案,只需将第二行更改为:

itemObject = {

return {

然后您可以说:

var item1 = objFunction('item1Name');

换一种说法:

function objFunction (itemName) {
    return {'name' : itemName};
}

var y = objFunction("theName");
console.log(y.name);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM