【发布时间】:2018-08-30 14:58:06
【问题描述】:
$scope.partsLinesTest = data[0].instock; // this is getting the JSOn data
from my http request
for(var i=0; $scope.partsLinesTest.length > 0; i++) {
//$scope.partsLinesTest = $scope.partsLinesTest[0].instock;
console.log($scope.partsLinesTest.replace(/['{[\]}']/g,''))
var str = $scope.partsLinesTest;
$scope.partsLinesStock = str.replace(/['{[\]}']/g,'');
}
Json 数据的格式如下,我的问题是 instock 由于额外的常规括号和花括号,这就是我认为使用 RegEX 可以解决问题的原因,但是我似乎无法正确遍历数据和将其发布回视图中,我也在使用 Angular
var test = [
{
"id": 1,
"title": "This is a document",
"desc": "PO",
"date": "2017-01-15",
"instock": "[{'branch': 'Edmonton', 'quantity': 2}]"
}
【问题讨论】:
-
对此的明智解决方案是修复数据的来源,以便提供有效的 JSON。
-
另一个可行的解决方案是使用
eval(data[0].instock),但出于安全原因我不建议这样做。 -
或
JSON.parse(data[0].instock.replace(/'/g, "\"")),但从源头解决问题比尝试修复损坏的 JSON 要好得多 -
我已经更新了一个答案@Darren
标签: javascript angularjs json