在javascript中迭代json数组

Den*_*s S 1 javascript arrays json loops

在浏览了很多关于SO的类似问题之后,我仍然无法迭代我的json结构.如何获得内部数组的值(键)?

var data = {"User1":{"Service1":2,"Service2":1},"User2":{"Service3":1}}

for(var user in data) {
    document.write(user + ': ')

    for(var service in data[user]){
        document.write(service + ': ' + user[service])
    }
    document.write("<br />")
}
Run Code Online (Sandbox Code Playgroud)

这打印:

User1:Service1:undefined Service2:undefined

User2:Service3:未定义

而且我想要它打印

User1:Service1:2 Service2:1

User2:Service3:1

是javascript还是我需要jQuery?提前致谢!

Sal*_*n A 8

var data = {
  User1: {
    Service1: 2,
    Service2: 1
  },
  User2: {
    Service3: 1
  }
};
for (var user in data) {
  console.log("User: " + user);
  for (var service in data[user]) {
    console.log("\tService: " + service + "; value: " + data[user][service]);
  }
}
Run Code Online (Sandbox Code Playgroud)

替换console.logdocument.write或等等.