Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript对象中转换JSON数组_Javascript_Php_Html_Json - Fatal编程技术网

在javascript对象中转换JSON数组

在javascript对象中转换JSON数组,javascript,php,html,json,Javascript,Php,Html,Json,我正试图从myJson数组打印classkey和status。我已将myJSON转换为一个对象。但是我无法打印classkey和status。在这段代码中,myJSON是自动生成的,在godaddy.com中也有一个点 <html> <head> <script> var myJSON = '{"godaddy.com":{"classkey":"domcno","status":"available"}}';

我正试图从
myJson
数组打印
classkey
status
。我已将
myJSON
转换为一个对象。但是我无法打印
classkey
status
。在这段代码中,
myJSON
是自动生成的,在
godaddy.com
中也有一个点

<html>
    <head>
    <script>
        var myJSON = '{"godaddy.com":{"classkey":"domcno","status":"available"}}';
        var myObj = JSON.parse(myJSON);
        document.write(myObj.hostdady.com[1].classkey);
    </script>
    </head>
    <body>
    <p></p>
    </body>
</html>

var myJSON='{“godaddy.com”:{“classkey”:“domcno”,“status”:“available”}';
var myObj=JSON.parse(myJSON);
write(myObj.hostdady.com[1].classkey);


使用方括号符号来转义无效的变量名

document.write(myObj['godaddy.com'].classkey)

您正在正确解析字符串,但在打印所选属性时出错

当您要写入所选属性时,您选择的是一个不存在的属性,
hostdady.com
而不是
godaddy.com

 document.write(myObj.hostdady.com[1].classkey);
但是,即使您将其更改为
myObj.godaddy.com[1].classkey
,您仍然会遇到问题,因为
godaddy
com
之间的
。浏览器将其解释为
godaddy
com
属性

相反,要访问godaddy.com属性,您需要编写:

myObj['godaddy.com']
而且,该属性不包含数组,因此您不需要
[0]
,只需像查找任何其他属性一样查找classkey即可:

document.write(myObj["godaddy.com"].classkey);

var myJSON='{“godaddy.com”:{“classkey”:“domcno”,“status”:“available”}';
var myObj=JSON.parse(myJSON);
document.write(myObj[“godaddy.com”].classkey);

JSON.parse()方法解析JSON字符串,构造字符串描述的JavaScript值或对象。可以提供可选的恢复器函数,以便在返回结果对象之前对其执行转换。
var myJSON='{“godaddy.com”:{“classkey”:“domcno”,“status”:“available”}};
var myObj=JSON.parse(myJSON);
var classKey=myObj[“godaddy.com”].classKey;
document.getElementById(“动态”).innerHTML=classKey

一些观察结果:

  • myJSON
    不是
    JSON对象
    。它是一个
    JSON字符串。
  • 使用
    JSON.parse
    JSON字符串
    转换为
    JSON对象
工作演示:

var myJSON='{“godaddy.com”:{“classkey”:“domcno”,“status”:“available”}};
var myObj=JSON.parse(myJSON);
用于(myObj中的var i){
document.getElementById(“classkey”).innerHTML=myObj[i].classkey;
document.getElementById(“status”).innerHTML=myObj[i]。status;
}


更多或类似于[0]?