这是我的对象
var data = {
a:{"0": "1"},
b:{"1": "2"},
c:{"2": "3"},
d:{"3": "4"}
};
这是我期望的输出
data = [
{"0": "1"},
{"1": "2"},
{"2": "3"},
{"3": "4"}
]
这是我的对象
var data = {
a:{"0": "1"},
b:{"1": "2"},
c:{"2": "3"},
d:{"3": "4"}
};
这是我期望的输出
data = [
{"0": "1"},
{"1": "2"},
{"2": "3"},
{"3": "4"}
]
这对我很有效
var newArrayDataOfOjbect = Object.values(data)
另外,如果你有键值对象,请尝试:
const objOfObjs = {
"one": {"id": 3},
"two": {"id": 4},
};
const arrayOfObj = Object.entries(objOfObjs).map((e) => ( { [e[0]]: e[1] } ));
会返回:
[
{
"one": {
"id": 3
}
},
{
"two": {
"id": 4
}
}
]
Object.values()
在 FireFox 中不受支持。 - Omarvar data = {
a:{"0": "1"},
b:{"1": "2"},
c:{"2": "3"},
d:{"3": "4"}
};
var myData = Object.keys(data).map(key => {
return data[key];
})
这对我有用
let myData = Object.keys(data).map(key => data[key]);
- Jason Rice被接受的答案没有考虑到原始问题想要摆脱键。它仅返回对象,而不是它们的父键。
Object.entries(ObjOfObjs).map(e => e[1])
输出:
[
{"0": "1"},
{"1": "2"},
{"2": "3"},
{"3": "4"}
]
您可以使用Object.values()
函数轻松实现此操作。
var data = {
a:{"0": "1"},
b:{"1": "2"},
c:{"2": "3"},
d:{"3": "4"}
};
console.log(Object.values(data))
您需要为对象中的每个值命名。
一旦您修复了第一个对象,那么您就可以使用push来完成它。
var data = {
1: {"0": "1"},
2: {"1": "2"},
3 : {"2": "3"},
4: {"3": "4"}
};
var ar = [];
for(item in data){
ar.push(data[item]);
}
console.log(ar);
这是一个简单的方法,以不可变的方式完成,因此您的主要数据不会受到影响,但您可以根据需要创建新的mappedData并创建新的数组。
let data = {
a: { "0": "1" },
b: { "1": "2" },
c: { "2": "3" },
d: { "3": "4" }
};
const mappedDataArray = [];
for (const key in data) {
const mappedData = {
...data[key]
};
mappedDataArray.push(mappedData);
}
console.log(mappedDataArray);
console.log(data);
简单的黑客
var data = {
a:{"0": "1"},
b:{"1": "2"},
c:{"2": "3"},
d:{"3": "4"}
};
data = Object.values(data).map((item)=>item)
console.log(data)
const snapshortObject = snapshot.val(); // And they look like this are stored value.
let snapshortObject = {
a: {
message: "Hiiii",
senderId: "tQusPaBhoJXcu2ezlsDxQMUTLCq1",
timestamp: "Wed Jun 8 18:16:18 2022"
},
b: {
message: "Hiiii",
senderId: "tQusPaBhoJXcu2ezlsDxQMUTLCq1",
timestamp: "Wed Jun 8 18:16:18 2022"
},
c: {
message: "Hello ",
senderId: "tQusPaBhoJXcu2ezlsDxQMUTLCq1",
timestamp: "Wed Jun 8 18:16:50 2022"
},
d: {
message: "Hello ",
senderId: "tQusPaBhoJXcu2ezlsDxQMUTLCq1",
timestamp: "Wed Jun 8 18:16:50 2022"
}
};
const mappedDataArray = [];
slno=1
for (const key in snapshortObject) {
const mappedData = {
...snapshortObject[key],
slno:slno++
};
mappedDataArray.push(mappedData);
}
console.log(mappedDataArray);
var array = [];
for(var item in data){
// this condition is required to prevent moving forward to prototype chain
if(data.hasOwnProperty(item)){
array.push(data[item]);
}
}
我明白你想要什么!这是你的解决方案,
var dataObject=[{name:'SrNo',type:'number'}];
要访问或存储数组,请使用
dataObject[0].srno=1;
dataObject[0].srno=2;
dataObject[0]
对象添加一个新属性。 - frogatto