0

我的页面中有以下几行,我希望它转换为 javascript 数组/对象。但我无法帮助自己

<script language="javascript" src="json2.js"></script>
<script>
json={"status":"error","message":"there was an error","type":"unclassified"};
alert(json.stringify(json));
</script>

我错过了什么吗?,我想在我做的时候得到这个"error"值,当我这样做的时候alert(newvar.error)我想得到“有一个错误”的部分alert(newvar.message),变量 json,应该被转换成 javascript 对象。

4

5 回答 5

2

您对 JSON 是什么感到困惑。这是:

一种完全独立于语言的文本格式,但使用 C 系列语言(包括 C、C++、C#、Java、JavaScript、Perl、Python 等)的程序员所熟悉的约定。这些属性使 JSON 成为一种理想的数据交换语言。

所以:

json={"status":"error","message":"there was an error","type":"unclassified"};

是一个 javascript 对象。

这是 JSON:

"{\"status\":\"error\",\"message\":\"there was an error\",\"type\":\"unclassified\"}"
于 2012-10-29T14:15:17.793 回答
1

那已经是一个对象了。当你对它进行字符串化时,你会得到它的 JSON 表示。此外,本机对象是 JSON,而不是 json。

于 2012-10-29T14:13:25.920 回答
1

您可能希望将对象转换为 JSON 表示。然后你需要:

JSON.stringify(json)

在 Javascript 中,变量名区分大小写。

于 2012-10-29T14:15:31.040 回答
0

我希望它将 [JSON 字符串] 转换为 javascript 数组/对象

为此,您可以使用JSON.parse(). 要将其转换回 JSON 字符串,您可以使用JSON.stringify

注意:您提供的应该已经是一个 JavaScript 对象。

json={"status":"error","message":"there was an error","type":"unclassified"};
​alert(json.type);​
于 2012-10-29T14:13:33.380 回答
0

json={"status":"error","message":"there was an error","type":"unclassified"}; 一个 JavaScript 对象。

如果 JSON 以字符串的形式出现,您只需要解析它。

如果要将其转换为包含 JSON 文本的字符串,则只需序列化 JavaScript 对象(使用JSON.stringify,而不是任意对象上的方法)。stringify

于 2012-10-29T14:15:44.440 回答