简体   繁体   中英

Node.js how to loop through JSON to get values

I'm working with node.js to try and get some values of a JSON using an api, I'm trying to loop through and get the status values in the JSON how would I go about doing this. The JSON is shown below

var serverNamesEurope = [
                        { name: result.Chars.Servers[0].Server[19].Name, status: result.Chars.Servers[0].Server[19].Usage, return: ""},
                        { name: result.Chars.Servers[0].Server[21].Name, status: result.Chars.Servers[0].Server[21].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[9].Name, status: result.Chars.Servers[0].Server[9].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[10].Name, status: result.Chars.Servers[0].Server[10].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[7].Name, status: result.Chars.Servers[0].Server[7].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[14].Name, status: result.Chars.Servers[0].Server[14].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[12].Name, status: result.Chars.Servers[0].Server[12].Usage, return: "" }
                    ]

What I want to do is be able to loop through this JSON and then return the status on a seperate line in the console for now.

You could do something like this:

var serverNamesEurope = [
                        { name: result.Chars.Servers[0].Server[19].Name, status: result.Chars.Servers[0].Server[19].Usage, return: ""},
                        { name: result.Chars.Servers[0].Server[21].Name, status: result.Chars.Servers[0].Server[21].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[9].Name, status: result.Chars.Servers[0].Server[9].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[10].Name, status: result.Chars.Servers[0].Server[10].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[7].Name, status: result.Chars.Servers[0].Server[7].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[14].Name, status: result.Chars.Servers[0].Server[14].Usage, return: "" },
                        { name: result.Chars.Servers[0].Server[12].Name, status: result.Chars.Servers[0].Server[12].Usage, return: "" }
                    ]

console.log(serverNamesEurope.map(record => record.status).join("\n"))

More on map here and how it works: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

Try this:

serverNamesEurope.forEach(elem => {
  console.log(elem.status)
})

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM