首页 > 解决方案 > 尝试将控制台中的多行合并到一个数组

问题描述

我正在获取一个 json 提要,我正在尝试从中获取值并将其设置为一个数组。

这是我在控制台中得到的:

控制台图像

这是我的代码:

    jQuery(document).ready(function($) {
    var allData, exampleallData;

    allData = {
        'action': 'ajax'
    };  

    jQuery.get(ajaxurl, allData, function(response) {
        exampleallData = jQuery.parseJSON(response);
        jQuery.each(exampleallData, function(index, value) {
            if(value.meta_key === 'brand') {
                console.log(value.meta_value);
            }
        });

    });
});

希望有人能告诉我为什么它会在控制台中换行,以及解决方案是什么并给出解释。

标签: jqueryarraysjson

解决方案


因为使用这个:

jQuery.each(exampleallData, function(index, value) {
        if(value.meta_key === 'brand') {
            console.log(value.meta_value);
        }
    });

您正在为exampleallData的每个元素调用console.log

解决方案应该是创建一个新的空数组,然后将每个元素添加到该数组,最后 console.log 新数组。

它应该是这样的:

jQuery(document).ready(function($) {
var allData, exampleallData;

allData = {
    'action': 'ajax'
};  

jQuery.get(ajaxurl, allData, function(response) {
    var newArray = [];
    exampleallData = jQuery.parseJSON(response);
    jQuery.each(exampleallData, function(index, value) {
        if(value.meta_key === 'brand') {
            newArray.push(value.meta_value);
        }
    });
    console.log(newArray);

});
});

推荐阅读