我通过wordpress访问后端服务器。我在这里提出问题是因为它与wordpress相关的java相关性更高。初始化之后,我在控制台中获得了大量JSON格式的数据。我要它。
{" HeroP":0,"硬币":1," LeadP":0,"实验" 10},& #34; CURRENCY1":0," currency2":0," currency3":0," currency4":0," currency5&#34 ;:0," currency6":0,"显示名":" TESTUSER":{}}
这是因为:
function accountDetailsResponse(response) {
console.log(JSON.stringify(response));
我的header.php中找到了javascript,而不是我保存的各种js文件。
我喜欢看到服务器正常工作。但我想隔离"硬币"或" displayName"作为变量。然后我想在我的html中定义一个元素,如下所示:
这样,当有人登录时,它会自动在一个漂亮的整洁列表中显示他们的显示名称,硬币或任何其他变量,而没有与他们无关的不必要的JSON值。
进一步的细节:控制台几乎吐出一切用于调试目的。服务器测试数据,API初始化数据,工程。同样,不止一个人将登录此服务器,因此displayName" testuser"将改为displayName" billybob"或者" jimmyjoe",无论谁登录。
我在使用javascript进行编码方面非常擅长,而且我几乎没有识字。如果问题没有正确格式化,我会道歉。我一直在自己搞清楚事情,但是这个肯定让我陷入困境。我似乎无法解析字符串,隔离变量,并在html中显示它!
答案 0 :(得分:1)
您需要将JSON对象作为变量获取,如此MyKong post中所述。在你的情况下,你可能想要一些像:
var coins = response.coins;
答案 1 :(得分:1)
如果你正在处理JSON字符串:
var obj = JSON.parse(json_string);
获得对象后,使用点运算符访问属性:
var prop = obj.prop;
OR数组索引语法:
var prop = obj["prop"];
答案 2 :(得分:0)
javascript行的含义:
console.log(JSON.stringify(response));
response
是一些包含属性的javascript对象
JSON.stringify()
将该对象转换为JSON字符串
console.log()
将该字符串字符串写入浏览器的控制台窗口。
因此,您不希望读取和解析在控制台中看到的格式化JSON字符串,因为您已在该response
对象中访问该信息。
结构不太清楚(JSON缺少某些部分),但请尝试
console.log(response.displayName);
而不是原始console.log
行旁边或旁边。您应该在控制台中看到“testuser”。现在,您需要找到一个HTML元素来将该值写入,而不是控制台。
答案 3 :(得分:0)
三分之三。我发布的每个问题,我都解决了!所以解析js的语法是错误的。 var obj =(JSON.parse(JSON.stringify(response)));'这让我可以使用obj.coin。它当前返回值“undefined”。但我有一种感觉,这将是字符串的格式化问题。这将是一个完全不同的问题。
答案 4 :(得分:0)
` function accountDetailsResponse(response) {
console.log (JSON.stringify(response));//logs the string to console
console.log(response.displayName);
document.getElementById("Coins").innerHTML =
(response.currencies.Coins);`
汉斯,再次感谢。你的代码得到了我所需要的,精确的,你精明地切断了我笨拙的初学者问题的措辞。
所以这段代码很奇怪。帐户详细信息是一个广泛的字符串,其中包含纬度,经度以及我服务器上每个可以想到的字符特征。目标变量"硬币"实际上存在于两个类别中。 "货币"和#34;保留货币。"两者都有不同的价值。出于某种原因,代码隔离了具有未定义值的代码。所以我必须具体说明(response.currencies.Coins)来指定我想要的那个。它立即弹出我在html元素上寻找的值。我现在看到没有人可以帮助我,因为我没有包括我的整个字符串。所以"未定义"结果将无法诊断。
我在这里学到的重要教训......如果没有细节,请不要去专业人士。字符串可以有......" sub"字符串。或者其他什么。