gpt4 book ai didi

javascript - 使用 JavaScript 浏览 JSON

转载 作者:行者123 更新时间:2023-11-29 16:16:54 25 4
gpt4 key购买 nike

好吧,我一直在搜索这个网站以找到任何类似或有启发性的东西,但我完全被困住了。我得到了一些有效的 JSON,需要对其进行解析以提取价格。我不会走得太远。

这是 JSON:

{
"result": "success",
"prices": {
"vdc": {
"monthly": "1.00"
},
"network": {
"private": {
"monthly": "2.00"
},
"public": {
"\/22 (1,111 IP Addresses)": {
"monthly": "3.00"
},
"\/21 (2,222 IP Addresses)": {
"monthly": "4.00"
},
"\/20 (3,333 IP Addresses)": {
"monthly": "5.00"
},
"\/19 (5,555 IP Addresses)": {
"monthly": "6.00"
},
"\/18 (6,666 IP Addresses)": {
"monthly": "7.00"
},
"\/17 (7,777 IP Addresses)": {
"monthly": "8.00"
},
"\/16 (8,888 IP Addresses)": {
"monthly": "9.00"
},
"\/25 (111 IP Addresses)": {
"monthly": "10.00"
},
"\/26 (55 IP Addresses)": {
"monthly": "11.00"
},
"\/27 (22 IP Addresses)": {
"monthly": "12.00"
},
"\/28 (11 IP Addresses)": {
"monthly": "13.00"
},
"\/29 (5 IP Addresses)": {
"monthly": "14.00"
},
"\/23 (900 IP Addresses)": {
"monthly": "15.00"
},
"\/24 (333 IP Addresses)": {
"monthly": "16.00"
}
}
},
"blocks": {
"22": {
"monthly": "17.00"
},
"21": {
"monthly": "18.00"
},
"20": {
"monthly": "19.00"
},
"19": {
"monthly": "20.00"
},
"18": {
"monthly": "21.00"
},
"17": {
"monthly": "22.00"
},
"16": {
"monthly": "23.00"
},
"25": {
"monthly": "24.00"
},
"26": {
"monthly": "25.00"
},
"27": {
"monthly": "28.00"
},
"28": {
"monthly": "29.00"
},
"29": {
"monthly": "30.00"
},
"23": {
"monthly": "24.00"
},
"24": {
"monthly": "25.00"
}
},
"server": {
"cpu": {
"monthly": "26.00"
},
"ram": {
"monthly": "27.00"
}
},
"volume": {
"gb": {
"monthly": "28.00"
}
},
"snapshot": {
"gb": {
"monthly": "29.00"
}
}
}
}

在 jsonlint [dot] com 进行了测试和验证。

经过多次尝试、测试、尝试、用头敲打我的键盘,尝试...这就是我目前拥有的,但它没有产生预期的结果(我会告诉你那些是什么,就在代码片段之后).

function gp(x){ 
for(var i in x){
console.log('700: ', x[i] );

if(x[i] != 'success'){
console.log(733);
console.log(x[i]);

for(var j in x[i]){
console.log(736);
console.log(x[i][j]);
}
}
}
}

在控制台中,我看到类似这样的内容:

enter image description here

例如,我真正希望看到(或查找或解析)的是来自“volume”元素(或者它是一个项目?)的“gb”的月度价格。

理想情况下,我想找到“volume”、“ram”和“cpu”——验证它是 volume、ram 和 cpu——然后得到每月价格。我确实尝试了一些 JSON 解析,但显然,我还没有完全掌握。

如有任何帮助,我们将不胜感激。

最佳答案

如果你想找到对象“volume”、“ram”和“cpu”那很简单:

var volume = x.prices.volume;
var ram = x.prices.server.ram;
var cpu = x.prices.server.cpu;

或者您可以直接使用它们:

console.log(x.prices.volume);

如果您想查找每月价格,则:

var prices = x.prices;
console.log('volume, monthly=', prices.volume.gb.monthly);
console.log('cpu, monthly=', prices.server.cpu.monthly);
console.log('ram, monthly=', prices.server.ram.monthly);

Javascript 对象非常简单,访问它们只有两种语法:

// If the key you're accessing is a constant (hardcoded):
object.key = value;

// If the key you're accessing is stored in another variable:
var k = "key";
object[k] = value;

// Alternatively:
object["key"] = value;

关于javascript - 使用 JavaScript 浏览 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14150642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com