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

Renaming or setting object names dynamically in JavaScript

本文关键字:设置 对象 重命名 JavaScript 动态      更新时间:2023-09-26

我对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);