以声明方式分配 javascript 数组 属性
assign javascript array property declaratively
我正在 javascript 中制作复杂的树状 array/object 以动态创建相似的页面(具有不同的配置文件)。因为它是静态的,所以公司政策是将这个数组保存在主常量文件中(当然,作为声明常量)。所以我的问题是,如何在 javascript 数组中分配声明性 属性?我知道我可以做到以下几点:
var a=[9,6,0,4];
a.title='profile 1';
但问题是那些是指令,常量文件是一个大对象,所以我不能使用它。我知道我可以使用普通对象,但我真的想要数字索引、动态长度、push/pop 方法等。我也知道每个都有替代品,比如使用数字作为 属性 名称,Object.keys(a).length 等等,但如果它只是一个数组,它会让我的生活变得更轻松。基本上,我需要在一条指令中创建它:
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 中制作复杂的树状 array/object 以动态创建相似的页面(具有不同的配置文件)。因为它是静态的,所以公司政策是将这个数组保存在主常量文件中(当然,作为声明常量)。所以我的问题是,如何在 javascript 数组中分配声明性 属性?我知道我可以做到以下几点:
var a=[9,6,0,4];
a.title='profile 1';
但问题是那些是指令,常量文件是一个大对象,所以我不能使用它。我知道我可以使用普通对象,但我真的想要数字索引、动态长度、push/pop 方法等。我也知道每个都有替代品,比如使用数字作为 属性 名称,Object.keys(a).length 等等,但如果它只是一个数组,它会让我的生活变得更轻松。基本上,我需要在一条指令中创建它:
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'});