从文本区域获取JSON数据

时间:2015-02-03 17:59:56

标签: javascript json textarea

在小提琴中 - http://jsfiddle.net/660m7g7k/

<textarea id="input">
[
{
  name: "Tyorry",
  age: 22
}, {
  name: "greg",
 age: 44
}, {
  name: "aff",
  age: 99
}, {
  name: "ben",
  age: 20
}
]

var x=document.getElementById("input").value;
alert(x[0]);

基本上有JSON数据,对象数组。我有两个问题。

1)这个JSON数据是JSON.stringify格式还是JSON.parse格式?因为JSON.parse错误输出并且JSON.stringify正常工作。

2)从textarea获取JSON数据。但是x [0]或x [3]返回空白。基本上我想循环遍历数组项(它们是对象)并获取值,名称和年龄。

2 个答案:

答案 0 :(得分:2)

文本区域中的值始终为string。因此,如果您希望将其作为对象,则需要使用JSON.parse()来获取它。如果JSON.Parse()失败,那么您的JSON格式无效。

要检查您的JSON是否有效,请尝试使用http://jsonlint.com/之类的内容。小提琴中提供的JSON无效。

答案 1 :(得分:1)

在Plain JS中使用此

var x=document.getElementById("input").value;
var y = eval(x);
alert('hi '+y[0].name+ ' are you '+ y[0].age+' years old');

Plunker