Javascript 推送对象';将内容放入数组中

Javascript 推送对象';将内容放入数组中,javascript,Javascript,我想将底部对象的内容推入数组,如下所示: var userArray = [{"xp":200,"level":3,"name":"User 1"},{"xp":300,"level":3,"name":"User 2"},{"xp":100,"level":3,"name":"User 3"},] 但是,每次我尝试使用for循环来执行userArray.push(I),并将其推入userArray,它都会返回[undefined,undefined,undefined] { "129

我想将底部对象的内容推入数组,如下所示:

var userArray = [{"xp":200,"level":3,"name":"User 1"},{"xp":300,"level":3,"name":"User 2"},{"xp":100,"level":3,"name":"User 3"},]

但是,每次我尝试使用for循环来执行
userArray.push(I)
,并将其推入
userArray
,它都会返回
[undefined,undefined,undefined]

{
    "1293818383": {
        "xp": 200,
        "level": 3,
        "name": "User 1"
    },
    "235489445527289867": {
        "xp": 300,
        "level": 1,
        "name": "User 2"
    },
    "123189273132": {
        "xp": 100,
        "level": 3,
        "name": "User 3"
    }
}
我做错了什么?

使用它将返回对象自身可枚举属性值的数组

var x={
"1293818383": {
“xp”:200,
"三级",,
“名称”:“用户1”
},
"235489445527289867": {
“xp”:300,
"一级",,
“名称”:“用户2”
},
"123189273132": {
“xp”:100,
"三级",,
“名称”:“用户3”
}
}

console.log(Object.values(x))
@etanc,请查看下面的代码

var json_obj = {
    "1293818383": {
        "xp": 200,
        "level": 3,
        "name": "User 1"
    },
    "235489445527289867": {
        "xp": 300,
        "level": 1,
        "name": "User 2"
    },
    "123189273132": {
        "xp": 100,
        "level": 3,
        "name": "User 3"
    }
}

var arr = [];
for(var key in json_obj) {
   arr.push(json_obj[key])
}

console.log(arr)
/*
 [{ xp: 200, level: 3, name: 'User 1' },
  { xp: 300, level: 1, name: 'User 2' },
  { xp: 100, level: 3, name: 'User 3' } ]
*/
如果您的数据很大,那么您将无法正确查看数据,除非您不格式化数据。使用JSON.stringify()对上述o/p进行格式化,以漂亮的形式查看,如下所示

JSON.stringify(arr, null, 4);
/*
[
    {
        "xp": 200,
        "level": 3,
        "name": "User 1"
    },
    {
        "xp": 300,
        "level": 1,
        "name": "User 2"
    },
    {
        "xp": 100,
        "level": 3,
        "name": "User 3"
    }
]
*/

您需要将JSON解析为JS对象才能启动。然后可以在对象上循环

// initial js object 
let initial = {"1293818383": {"xp": 200,"level": 3,"name": "User 1"}, "235489445527289867": {"xp": 300, "level": 1, "name": "User 2"}, "123189273132": {  "xp": 100, "level": 3, "name": "User 3" }
    }

// convert object to json -- THIS IS START OF QUESTION
let json = JSON.stringify(initial)

// intantiate userArray
var userArray = []

// parse json into js object
var parsed = JSON.parse(json)

for (let obj in parsed){
// use each key of object to get value
  userArray.push(parsed[obj])
}
console.log(userArray)
// [ { xp: 200, level: 3, name: 'User 1' }, { xp: 300, level: 1, name: 'User 2' }, { xp: 100, level: 3, name: 'User 3' } ]

这些是JavaScript对象。JSON是一个字符串。“每次我尝试使用for循环时”添加您的代码plz我们如何知道
userArray.push(I)