jsonp格式的資料轉化為json格式
阿新 • • 發佈:2018-11-08
如果前端請求獲取到的資料格式是jsonp,那麼我們就要轉換成json才能進行解析。
datas為jsonp資料格式的字串變數,如:jsonp({"a":"1234","b":9999})
// 下面是對獲取到的資料進行處理,把jsonp格式的資料處理成json格式的資料
if(typeof datas === "string"){
// 返回的是jsonp型別的資料,所以要用正則表示式來匹配擷取json資料
let reg = /^\w+\((\{[^()]+\})\)$/;
let matches = datas.match(reg);
// matches匹配到的是陣列,陣列第一個是所有正則表示式匹配的字串,第二個是第一個小括號匹配到的字串
if(matches){
let jsonData = JSON.parse(matches[1]);
}
}
console.log(jsonData); //這裡打印出來的是json格式的資料
最終得到的jsonData就是json格式了,如:{"a":"1234","b":9999}