javascript - 将 json 字符串转换为随机数量的 JSON 对象内的对象

标签 javascript angularjs json

我遇到了如何更改 json 对象内的 json 字符串以获取随机数量的对象的问题。让我用我的代码和评论进一步解释这一点。

我有提供 json 对象的工厂

//Factory for products
app.factory('productsFactory', ['$http', '$location', function($http, $location){
    var factory = {};
    factory.getlatestProductsList = function(n){
        return $http.get($location.protocol() + '://' + $location.host() + '/server/api/products/latest/'+n);
    }
    return factory;
}]);

该工厂返回一些随机数量的对象

0: Object
active: "1"
alias: "baumbach-circle"
date_c: "2016-01-06 08:09:54"
date_u: null
description: "Corrupti fugit iste quo sunt quidem voluptatibus dolorem. Eos velit architecto veritatis doloribus. Corporis sequi cupiditate possimus voluptates ut consequatur. Accusantium libero qui est sunt et."
id_category: "46"
id_product: "25"
id_user: "177"
images: "[{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?63763","image":"http:\/\/lorempixel.com\/1024\/768\/?52630","position":0},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?99795","image":"http:\/\/lorempixel.com\/1024\/768\/?84669","position":1},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?17506","image":"http:\/\/lorempixel.com\/1024\/768\/?88926","position":2},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?73869","image":"http:\/\/lorempixel.com\/1024\/768\/?91917","position":3},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?70019","image":"http:\/\/lorempixel.com\/1024\/768\/?18509","position":4}]"
name: "Baumbach Circle"
__proto__: Object
1: Object
active: "1"
alias: "elta-road"
date_c: "2016-01-06 08:09:53"
date_u: null
description: "Culpa perferendis dolores rerum deleniti vero cumque. Similique explicabo beatae est quo sit nisi. Et a voluptatem nihil in. Voluptates modi qui est ducimus corrupti."
id_category: "46"
id_product: "24"
id_user: "73"
images: "[{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?53746","image":"http:\/\/lorempixel.com\/1024\/768\/?49502","position":0},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?75052","image":"http:\/\/lorempixel.com\/1024\/768\/?77727","position":1},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?32463","image":"http:\/\/lorempixel.com\/1024\/768\/?76121","position":2},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?61377","image":"http:\/\/lorempixel.com\/1024\/768\/?89434","position":3},{"thumbImage":"http:\/\/lorempixel.com\/250\/150\/?86873","image":"http:\/\/lorempixel.com\/1024\/768\/?82513","position":4}]"
name: "Elta Road"
__proto__: Object

问题是图像 json 是字符串格式,所以我必须使用 JSON.parse (至少我这么认为,因为我是新手)将它们转换为 JSON

我的问题是:是否有一些简单的好方法将所有图像数据解析为 json,或者我是否必须使用 forEach 来执行此操作,如果是这样,代码会是什么样子。我不想在工厂内实现这种效果,因此我不必在调用该工厂的每个 Controller 中重复代码。

如果您需要任何其他信息,请告诉我,我会提供。预先感谢您。

最佳答案

您可以在返回之前编辑 $http 返回的答案

app.factory('productsFactory', ['$http', '$location', function($http, $location){
    var factory = {};
    factory.getlatestProductsList = function(n){
        var url = $location.protocol() + '://' + $location.host() + '/server/api/products/latest/'+n;
        return $http({
            method: 'GET',
            url: url
        }).then(function successCallback(response) {
            // you can edit the response her, and parse it
            return response ;
        }, function errorCallback(response) {

        });
    }
    return factory;
}]); 

关于javascript - 将 json 字符串转换为随机数量的 JSON 对象内的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34636970/

相关文章:

javascript - 如何在折叠时为 div 设置图像然后如果我单击展开需要显示内容?

javascript - AngularJS:在重复多个数组时防止显示最后一个分隔符

angularjs - 为什么 $routeChangeSuccess 永远不会被调用?

php - JavaScript Ajax 请求与 jQuery $.ajax

c# - 有时是,有时不是JSON错误:“没有为'System.String'类型定义无参数构造函数”

json - swift 4 : Keeping the same order when parsing a JSON

javascript - 从数组中获取具有最低值属性的对象

javascript - 如何更新子组件的状态以独立拖动它们

javascript - 将新对象添加到另一个对象的对象中

javascript - Highcharts.js 中多轴的工具提示格式化程序