使用 Javascript 在不使用硬编码密钥的情况下提取 JSON 对象 values/keys

Extract JSON object values/keys without using hardcoded keys using Javascript

 cart = {
 "Items": 3,
 "Item": {
      "Apple iPhone 5S": {
              "productId": 688,
              "url": "http://website.com/phone_iphone5s.html",
              "price": 299.99
        },
      "Solio Mono Solar Charger": {
              "productId": 655,
              "url": "http://website.com/solio_charger.html",
              "price": 29.95
        },
       "24 Month Warranty Package": {
              "productId": 681,
              "url": "http://website.com/24_month_warranty.html",
              "price": 129.95
        }
  },
"Total": 459.89
 }

我想写一个JavaScript函数,在浏览器中输出商品总数,每件商品的价格,以及购物车的总价值开发工具控制台。例如:需要select Apple Iphone 5S 及其价格,Solio Mono 太阳能充电器及其价格等。不使用硬编码键(例如“Apple iPhone 5S”、“Solio Mono Solar Charger”)。有什么办法吗??

这种格式可以获取吗??

   Items: 3 
    - Apple iPhone 5S (9.99) 
    - Solio Mono Solar Charger (.95) 
    - 24 Month Warranty Package (9.95)
   Total: 459.89 

你在找这样的东西吗

var str = `Items: ${cart.Items} `;
Object.keys(cart.Item).forEach((key) => {
  str += `- ${key} (${cart.Item[key].price}) `
})

str +=  `Total: ${cart.Total}`
console.log(str)

var cart = {
  "Items": 3,
  "Item": {
    "Apple iPhone 5S": {
      "productId": 688,
      "url": "http://website.com/phone_iphone5s.html",
      "price": 299.99
    },
    "Solio Mono Solar Charger": {
      "productId": 655,
      "url": "http://website.com/solio_charger.html",
      "price": 29.95
    },
    "24 Month Warranty Package": {
      "productId": 681,
      "url": "http://website.com/24_month_warranty.html",
      "price": 129.95
    }
  },
  "Total": 459.89
}


var str = `Items: ${cart.Items} `;
Object.keys(cart.Item).forEach((key) => {
  str += `- ${key} (${cart.Item[key].price}) `
})

str +=  `Total: ${cart.Total}`
console.log(str)

你可以像这样遍历它们并获取想要的数据。

您可以根据需要对其进行编辑。

cart = {
 "Items": 3,
 "Item": {
      "Apple iPhone 5S": {
              "productId": 688,
              "url": "http://website.com/phone_iphone5s.html",
              "price": 299.99
        },
      "Solio Mono Solar Charger": {
              "productId": 655,
              "url": "http://website.com/solio_charger.html",
              "price": 29.95
        },
       "24 Month Warranty Package": {
              "productId": 681,
              "url": "http://website.com/24_month_warranty.html",
              "price": 129.95
        }
  },
"Total": 459.89
 }

for (var key in cart.Item) {
    if (cart.Item.hasOwnProperty(key)) {
        console.log(key + " " + cart.Item[key]);
    }
}