网页在脚本标记内的html树中包含JSON。我需要提取该JSON对象并将其作为JSON对象进行操作。请告知我如何实现它。
我正在尝试这样做:


 var url ='https:// indooroopillyshopping。 com.au/stores/'
var xhr = new XMLHttpRequest();
 xhr.open('GET',url,false);
 console.log(“发送请求到”, url);
 // WAIT
 xhr.send();
 console.log(“接收来自”,url);

 var data = xhr.responseText ;
 var json = data.match(/ \ [{“id”:“836”,“title”:“Acutherapy”。* / g); //我需要一个对象window.STORES = [{}]
 var parsedJson = JSON.parse(stringJson); //捕获错误


&# xA; 我也尝试过这样的方式:


 var json = data.match(/ {“id”:“836”,“ title“:”Acutherapy“。* / g);
 var newjson = json [0] .substring(0,json [0] .length-2); //删除末尾的空格和方括号&#xA ; var stringJson = JSON.stringify(newjson);
 var parsedJson = JSON.parse(stringJson)
 console.log(parsedJson [0] .id)//我无法使用点表示法访问JSON,因为它就像一个字符串(对象但不是[Object object])



 我只需将json字符串转换为json对象即可访问它的关键和价值观。

答案 0 :(得分:0)
var data = xhr.responseText;
var json = data.match(/\[{"id":"836","title":"Acutherapy".*/g);
var newjson = json[0].substring(0, json[0].length-1);
var parsedJson = JSON.parse(newjson)
console.log(parsedJson[1].id); //668
答案 1 :(得分:-1)
使用JSON.parse()(在大多数浏览器中都支持),就像这个例子一样简单:
var json = '{"key1":1,"key2":2}',
var parsedJson = JSON.parse(json);
console.log(parsedJson.key1);