Javascript:具有数组值的键

Javascript:具有数组值的键,javascript,arrays,typescript,object,ecmascript-6,Javascript,Arrays,Typescript,Object,Ecmascript 6,我试图创建一个对象,其中key是一个数字,value是一个对象数组。如何在javascript中实现这一点 我想创建一个如下所示的对象: {Key: "1", value: [Object, Object, ...], key: "2", value: [Object, Object, ...], key:"N", value: [Object, Object, ...]} 在javascript/typescript中,这是如何实现的 我试过: let myObj = {}; myObj["

我试图创建一个对象,其中key是一个数字,value是一个对象数组。如何在javascript中实现这一点

我想创建一个如下所示的对象:

{Key: "1", value: [Object, Object, ...], key: "2", value: [Object, Object, ...], key:"N", value: [Object, Object, ...]}
在javascript/typescript中,这是如何实现的

我试过:

let myObj = {};
myObj["1"] = myObj["1"].push(Object)

上述代码不起作用。

这是可能的,可以通过多种方式实现。例如,要实现TypeScript所需的功能,可以执行以下操作:

/* Define a type describing the structure of your desired object (optional)
 */    
type CustomType = { [key: number]: Array<any> };

/* Create your object based on type definition with numbers as keys and array
   of objects as values */
const yourObject: CustomType = {
  1 : [1,2,3],
  2 : ['a','b','c'],
  3 : [ new Object(), new Object() ]
};

push
返回数组的新长度-因此只需调用函数(对返回值不做任何操作),确保已首先初始化目标数组:

let myObj = {};
myObj["1"] = myObj["1"] || [];
myObj["1"].push(Object);
您还可以定义自定义类型:

type objectContainingObjects = { [key: string]: object[] }
1)
.push
返回一个数字,我认为您不想为
myObj[“1”]
2)同一个键不能有两次,因此您想要的数据结构是不可能实现的(而且毫无意义的),也许您想要一个对象数组?