Javascript 从对象数组中删除JSON对象

Javascript 从对象数组中删除JSON对象,javascript,arrays,json,Javascript,Arrays,Json,我有一个来自股票市场的API,它通过以下方式返回一个JSON对象和子对象 Data: { 10:30: { "high": 100 "low": 80 } 10:35: { "high": 100 "low": 80 } 10:50: { "high": 100

我有一个来自股票市场的API,它通过以下方式返回一个JSON对象和子对象

Data: {
    10:30: {
        "high": 100
        "low": 80
      }
    10:35: {
        "high": 100
        "low": 80
      }
    10:50: {
        "high": 100
        "low": 80
      }
}
我的计划是从第一个对象(例如10:30)获取数据,将其放在数组的末尾,然后将数组传递给react-graph.js

我试图复制第一个对象,然后将其从JSON对象数组中删除,但我认为
object.keys(obj).pop()
返回最后一个对象,但没有删除它。这意味着下一次迭代将返回相同的对象和相同的数据

我还尝试从数组中获取最后一个对象,但我搜索了返回最后一个或第一个对象的函数,但没有找到任何对象。

您可以使用object.entries()获取键/值对数组,然后可以shift()(删除第一个元素并分配给变量)并从条目中创建新对象:

let数据={
'10:30': {
“高”:100,
“低”:80
},
'10:35': {
“高”:100,
“低”:80
},
'10:50': {
“高”:100,
“低”:80
}
};
让entries=Object.entries(数据);
设firstProp=entries.shift();
控制台日志(firstProp);
让newData=Object.fromEntries(entries);
console.log(newData)尝试使用拼接(起始位置,删除计数)

在您的场景中:

Object.keys(obj).splice(-1,1)
这将返回一个不带最后一个元素的新数组。keys(ObjectHere)
返回一个带键的新数组。对该数组执行操作不会影响
数据
对象。。。但这不是你想做的。你想做的事情如下:

const数据={
"10:30": {
“高”:100,
“低”:80
},
"10:35": {
“高”:100,
“低”:80
},
"10:50": {
“高”:100,
“低”:80
}
}
函数hiLow(hhmm){
返回{[hhmm]:数据[hhmm]};
}
常量输出=[];
推(hiLow('10:30'));

控制台日志(输出)可以拼接出数组的最后一个元素。拼接(startPosition,deleteCount)它不会删除对象。我在splice、pop、unshift前后记录了日志,对象保持不变。splice将返回一个新数组,而不返回最后一个数组element@StackSlave
Object.entries()
应按定义顺序返回键/值。关于对象属性排序的保证在过去几年中发生了变化