如何将多个对象分配给一个数组? [关闭]
Posted
技术标签:
【中文标题】如何将多个对象分配给一个数组? [关闭]【英文标题】:How to assign multiple Objects to one array? [closed] 【发布时间】:2020-01-18 16:55:54 【问题描述】:** 我想将多个对象存储到一个数组中,我有五个对象 obj1,obj2,obj3,obj4,obj5**
【问题讨论】:
嗨萨利姆。请提供更多上下文。你试过什么?你想要的输出是什么?您的问题既不清楚又过于宽泛。 你所有的对象似乎都是一样的。 这些是我想组装成一个数组的不同对象,我正在使用 vue js。 @barmar 这些是我想组合成一个数组的不同对象。 @salimkhan 您应该问一个具体问题,而不是仅仅问“我该怎么做XYZ?”没有任何上下文、代码等。更恰当的问题可能会解释您想要的输出,包括您尝试过的代码的 sn-p,并询问它的特定部分有什么问题。 【参考方案1】:我同意这太宽泛了,而且还不够详细。但这里是在 javascript 中添加对象和数组的基础知识。
“添加”一个对象
let arr = [];
let obj =
"by": "5d7bcc50ca80630017807ada",
"id": "5d7fd4884680ef00171cf3d4",
"message": "salaam",
"to": "5d7f39c6dacf250017ccac85"
;
arr.push(obj);
或
let obj =
"by": "5d7bcc50ca80630017807ada",
"id": "5d7fd4884680ef00171cf3d4",
"message": "salaam",
"to": "5d7f39c6dacf250017ccac85"
;
let arr = [obj];
在您发布的代码中,这取决于您如何接收/构建这些对象,但这是一个非常简单的示例。
let obj1 =
"by": "5d7bcc50ca80630017807ada",
"id": "5d7fd4884680ef00171cf3d4",
"message": "salaam",
"to": "5d7f39c6dacf250017ccac85",
;
let obj2 =
"by": "5d7bcc50ca80630017807ada",
"id": "5d7fd4884680ef00171cf3d4",
"message": "salaam",
"to": "5d7f39c6dacf250017ccac85",
;
let obj3 =
"by": "5d7bcc50ca80630017807ada",
"id": "5d7fd4884680ef00171cf3d4",
"message": "salaam",
"to": "5d7f39c6dacf250017ccac85",
;
let obj4 =
"by": "5d7bcc50ca80630017807ada",
"id": "5d7fd4884680ef00171cf3d4",
"message": "salaam",
"to": "5d7f39c6dacf250017ccac85",
;
let arr = [obj1, obj2, obj3, obj4];
OR
let arr = [];
arr.push(obj1);
arr.push(obj2);
arr.push(obj3);
arr.push(obj4);
在 VueJS 组件中,您可以在数据对象中设置键:
data ()
return
arr: []
你会做什么:
this.arr.push(obj);
或
this.arr = [obj];
两者都是反应式https://vuejs.org/v2/guide/list.html#Array-Change-Detection
对于那些遇到这种情况的人,我故意省略了更复杂的示例或扩展运算符语法。基于这个问题,我的假设是他们才刚刚开始,不想让他们不知所措。
【讨论】:
【参考方案2】:嗯,你可以简单地初始化一个数组
let someArray = [];
然后您可以使用扩展运算符为每个对象添加对象,如下所示:
someArray = [...ObjectReference];
【讨论】:
谢谢,让我看看它是否正常工作。以上是关于如何将多个对象分配给一个数组? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何将一个对象数组的一个属性的值分配给另一个对象数组的同名属性? - Javascript
如何将中间件分配给 Laravel 中的路由(更好的方法)? [关闭]