Arrays JSON字符串数组始终为空

Arrays JSON字符串数组始终为空,arrays,json,Arrays,Json,我在服务器端提供了一些JSON数据,可以在客户端页面中使用。在HTTP响应中,它看起来是正确的: digitalData = { "page": { "pageInfo": { "geoRegion": "US", "onsiteSearchResults": 38, "onsiteSearchTerm": "leather", "sysEnv": "HAMP"

我在服务器端提供了一些JSON数据,可以在客户端页面中使用。在HTTP响应中,它看起来是正确的:

digitalData = {
    "page": {
        "pageInfo": {
            "geoRegion": "US",
            "onsiteSearchResults": 38,
            "onsiteSearchTerm": "leather",
            "sysEnv": "HAMP"
        },
        "category": {
            "dirID": 2,
            "pageTemplate": "/store/search.aspx",
            "pageType": "Search"
        },
        "attributes": {
            "searchType": "standard",
            "refinementCategory": "10001",
            "searchFilters": ["50859"]
        }
    },
    "user": {
        "profile": {
            "profileInfo": {
                "profileID": "{C0A253A9-AD6E-4B6B-A313-3D215704D0FB}",
                "returningStatus": "new"
            }
        },
        "segment": {
            "persona": ["EXPERT"]
        }
    },
    "cart": {
        "cartID": "2508d65f-6495-4256-8125-75767b847e45",
        "numItems": 0
    },
    "version": "1.0"
};

但是,当我通过Dev Tools元素或控制台检查DOM时,上面JSON中的searchFilters字符串数组总是空的。我根本没有引用该对象的客户端代码。如何/为什么从HTTP响应中的正确到DOM中的null?我已经在JSONLint中验证了JSON,它是有效的

JSON是有效的。请附加方括号,然后重试

var objArray=[{
“第页”:[{
“页面信息”:[{
“乔治亚州”:“美国”,
“现场搜索结果”:38,
“onsiteSearchTerm”:“皮革”,
“sysEnv”:“HAMP”
}],
“类别”:[{
“肮脏”:2,
“pageTemplate”:“/store/search.aspx”,
“页面类型”:“搜索”
}],
“属性”:[{
“搜索类型”:“标准”,
“精炼类别”:“10001”,
“搜索过滤器”:[“50859”]
}]
}],
“用户”:[{
“简介”:{
“profileInfo”:{
“profileID:“{C0A253A9-AD6E-4B6B-A313-3D215704D0FB}”,
“returningStatus”:“新”
}
},
“部分”:{
“人物”:[“专家”]
}
}],
“购物车”:[{
“cartID”:“2508d65f-6495-4256-8125-75767b847e45”,
“numItems”:0
}],
“版本”:“1.0”
}];
函数getDetails(){
document.getElementById(“demo”).innerHTML=“数组长度=“+objArray.Length;
document.getElementById(“element”).innerHTML=“数组的第0个元素=“+objArray[0];
document.getElementById(“elementInfo”).innerHTML=“第0个位置的元素数组=“+objArray[0]。第[0]页。第pageInfo;
document.getElementById(“elementInfo2”).innerHTML=“第00个位置的元素数组=“+objArray[0]。第[0]页。第[0]页。第[0]页。第[0]页。地理区域;
}
检查


数字数据=不是JSON检查DOM与
搜索过滤器的值有什么关系?您发布的只是一个对象结构,并说它是“错误的”。在响应中,您应该只获取JSON,前面没有赋值,后面没有分号。这篇文章中没有JSON…我也没有很多问题需要解释…您可以将消耗这些数据的代码发布到一个JSFIDLE中,以复制错误吗。现在,这里没有足够的细节来确定问题。我的顶级对象不是数组,所以我不认为我需要括号。我有一个包含searchFilters字符串数组的单个对象,该数组正确地包含括号。但是object.page.attributes.searchFilters在浏览器控制台中求值时总是求值为null,即使它在HTTP响应中看起来是正确的。