我正在 JavaScript 中创建一个复杂的树状数组/对象,以动态创建类似的页面(具有不同的配置文件)。由于它的静态性质,公司政策将该数组保留在主常量文件中(当然,作为声明常量)。所以我的问题是,如何在 javascript 数组中分配声明性属性?我知道我可以执行以下操作:
var a=[9,6,0,4];
a.title='profile 1';
但问题是这些是指令,而常量文件是一个大对象,所以我不能使用它。我知道我可以使用普通对象,但我真的想要数字索引、动态长度、push/pop 方法等。我也知道每个对象都有替代品,例如使用数字作为属性名称,Object.keys(a)。长度等,但如果它只是一个数组,它会让我的生活变得更加轻松。基本上,我需要在一条指令中创建它:
Array[2]
>0: Object
>1: Object
>length: 2
>title: "profile1"
>__proto__: Array[0]
编辑: 由于困惑,我将尽力澄清为什么我特别需要它成为一条指令。正如我提到的,常量文件是一个大对象,没有指令,但有自己的声明,因此它必须是一个属性。
CONSTANTS={
const1: 'something',
const2: 'something',
const3: 'something',
...
const60: 'something',
myArray: [
[{},{},{},{}],//here the title property would go directly on the array
[{},{},{},{}],//same
[{},{},{},{}],//etc.
...
]
};
最佳答案
您可以使用Object.assign
:
var a = Object.assign([1, 2, 3, 4], {title: 'profile 1'});
关于javascript - 以声明方式分配 javascript 数组属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42707571/