gpt4 book ai didi

javascript - AngularJS 中的字符串到对象

转载 作者:行者123 更新时间:2023-12-03 08:21:38 25 4
gpt4 key购买 nike

我的网络服务返回数据,我替换了不必要的字符并获取有效的字符串。

该字符串如何在对象中传输。

示例 1 静态数据(不是来自 Web 服务)工作正常。

$scope.str = [];
str = {"car": [{"id": 11,"name": "BMW",}, {"id": 22,"name": "Toyota"}],};
$scope.data = str;

示例 2 来自 Web 服务的数据不起作用

str = data;
str.replace("?", "").replace("(", "").replace(")", "").replace(";", "");
$scope.data = str;

最佳答案

清理字符串后,您只需运行 JSON.parse(),

试试这个:

str = data;
JSON.parse(str.replace('?','').replace('(','').replace(')','').replace(';','').replace(',}','}').replace(',};','}'))
$scope.data = JSON.parse(str);

正则表达式版本:

JSON.parse(data.replace(/\?|\(|\)/g, '').replace(/,}/g, '}').replace(/;/g, ''));

工作副本:

<!DOCTYPE html>
<html ng-app="app">

<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular-sanitize.js"></script>
<meta charset=utf-8 />
<title></title>
</head>

<body ng-controller="MyController">
<option ng-repeat="cars in data.car" value="{{cars.name}}">{{cars.name}}</option>

<button ng-click="calculateQuantity()">Calculate</button>
<script>
var app = angular.module('app', ['ngSanitize']);

app.controller("MyController", function($scope, $http) {


$scope.calculateQuantity = function() {

$http.get('https://crossorigin.me/http://wsvuci.int-ware.com/appWS.asmx/myService?callback=?', {
params: {
userName: 'aa',
procedureName: "EXECUTE wsReturn"
}
})
.success(function(data) {
$scope.data = JSON.parse(data.replace(/\?|\(|\)/g, '').replace(/,}/g, '}').replace(/;/g, ''));
})
.error(function() {
alert("error");
});
};

});
</script>

</body>

</html>

关于javascript - AngularJS 中的字符串到对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33723722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com