Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中将对象推送到数组中_Javascript_Arrays_React Native - Fatal编程技术网

在javascript中将对象推送到数组中

在javascript中将对象推送到数组中,javascript,arrays,react-native,Javascript,Arrays,React Native,对象未推入数组 groupEventsArray=[] groupEvents=(eventOnDate)=>{ for(i=0;i<eventOnDate.events.length;i++){ for(j=0;j<eventOnDate.events.length;j++){ if(eventOnDate.events[i].start==eventOnDate.events[j].start) this.grou

对象未推入数组

  groupEventsArray=[]
  groupEvents=(eventOnDate)=>{
    for(i=0;i<eventOnDate.events.length;i++){
      for(j=0;j<eventOnDate.events.length;j++){
        if(eventOnDate.events[i].start==eventOnDate.events[j].start)
        this.groupEventsArray.push(eventsOnDate.events[i])
      }
    }
    console.log(JSON.stringify(this.groupEventsArray))
  }
groupEventsArray=[]
groupEvents=(eventOnDate)=>{

对于(i=0;i请考虑使用
forEach()
方法。
forEach()
方法按顺序为数组中的每个元素调用一次提供的函数

注意:
forEach()

语法

array.forEach(function(currentValue, index, arr), thisValue)
示例

var numbers = [4, 9, 16, 25];
function myFunction(item, index) {
  console.log(item, index);
}

numbers.forEach(myFunction)

像这样在数组上循环有助于避免infinte循环。

听起来像是一个基本的按关键问题分组数组。您可以通过以下方式完成:

const数据={
完整日期:“2018-10-26T09:30:00.000Z”,
活动:[
{
eventId:'43460',
开始:“1540525500”,
},
{
eventId:'43461',
开始:“1540525500”,
},
{
eventId:'43462',
开始:“1540525500”,
},
{
eventId:'43463',
开始:“1540525510”,
},
],
};
const createKey=(t)=>t.start;
console.log(
对象值(
数据.事件
.map((o)=>[o,createKey(o)])
.reduce((结果,[项目,关键])=>{
结果[键]=结果[键]| |[];
结果[键]。推送(项);
返回结果;
}, {}),
),

)
您可以共享
eventOnDate
数组吗?您已经将变量用作
groupEventsArray=[]
,但在推送时,您使用的是
this.groupEventsArray
而不是
groupEventsArray
,但我认为它是在无限循环中阻塞的
除非
eventOnDate.events.length
是无限的…但您确实意识到您的代码将推送每个
eventOnDate.events
无论如何{“fullDate”:“2018-10-26T09:30:00.000Z”,“事件”:[{“eventId”:“43460”,“标题”:“第一天的概述和第二天的预期”,“描述”:“开始”:“1540525500”,“结束”:“1540525800”,“位置”:“Aura 1和2”,“类型”:“正常”,“限制”:0,“剩余”:-1”,“url”:“网络事件”:0,“alreadyRegistered”:0,“共享”:1,“qa”:1,“日历”:1},示例:EventDetail是这样的