将json保存在javascript数组中

将json保存在javascript数组中,javascript,arrays,json,variables,Javascript,Arrays,Json,Variables,我正试图将json保存在javascript数组中,但我不知道如何做。我不想保存数组第一个元素中的所有内容。 这就是我的职责: function jeyson() { var onion = new XMLHttpRequest(); onion.open("GET", "json.json", true); onion.send(null); /* var anotheronion = angular.fromJson(onion.responseText, false); */

我正试图将json保存在javascript数组中,但我不知道如何做。我不想保存数组第一个元素中的所有内容。 这就是我的职责:

function jeyson()
{
var onion = new XMLHttpRequest();
onion.open("GET", "json.json", true);
onion.send(null);

/* var anotheronion = angular.fromJson(onion.responseText, false); */

    var onionarray = new Array()

}
onionarray是我希望包含json文件的数组

我的json可能类似于:

{

"count": 2,
"e": 1,
"k": null,
"privateresult": 0,
"q": "surname",
"start": 0,
"cards": [
    {
        "__guid__": "efd192abc3063737b05a09a311df0ea0",
        "company": false,
        "__title__": "name1 surname",
        "__class__": "entity",
        "services": false,
        "__own__": false,
        "vanity_urls": [
            "name1"
        ]
    },
    {
        "__guid__": "01917cfa71a23df0a67a4a122835aba8",
        "photo": {
            "__own__": false,
            "__title__": null,
            "__class__": "image",
            "__guid__": "01917cfa71a23df04d03f83cb08c11e1"
        },
        "company": false,
        "__title__": "name2 surname",
        "__class__": "entity",
        "services": false,
        "__own__": false,
        "vanity_urls": [
            "name2"
        ]
    }
]

}
如何将其保存到阵列中

PS我没有类似“同源策略”的问题,因为json文件在同一台服务器上(目前我正在处理本地文件。我可以处理不在同一个域上的文件吗?)

PS 是否可以将json用作javascript对象(如数组)?如果我想在我的json对象中搜索一些东西,我该怎么做

function geisson()
{
var iabile = new XMLHttpRequest();
iabile.open("GET", "json.json", true);
iabile.send(null);

var objectjson = {};
objectson = JSON.parse(iabile.responseText);
alert(objectson.cards.toSource());  
return false;
}

使用浏览器方法
JSON.parse()
JSON.stringify()
将JSON转换为javascript对象并返回

在您的例子中,
onionarray
不应该是一个数组,而应该是一个对象(事实上,数组和对象在javascript中>非常类似)。您可以这样分配jsondata:

onionarray = JSON.parse(data);

使用浏览器方法
JSON.parse()
JSON.stringify()
将JSON转换为javascript对象并返回

在您的例子中,
onionarray
不应该是一个数组,而应该是一个对象(事实上,数组和对象在javascript中>非常类似)。您可以这样分配jsondata:

onionarray = JSON.parse(data);

传入的JSON不是数组;它是一个JSON结构(在Javascript中,与对象相同)。因此它不能直接存储为数组

json确实包含一个数组作为
cards
元素你想要吗

你需要

  • 将传入的JSON解析为JS结构。(使用JSON.parse。)
  • 在Javascript中获得结构后:

    incoming = JSON.parse(data);
    onionarray = incoming.cards;
    
  • 还要注意,声明空数组的现代方法是

    var onionarray = [];  
    
    // not
    var onionarray = new Array()
    

    传入的JSON不是数组;它是一个JSON结构(在Javascript中,与对象相同)。因此它不能直接存储为数组

    json确实包含一个数组作为
    cards
    元素你想要吗

    你需要

  • 将传入的JSON解析为JS结构。(使用JSON.parse。)
  • 在Javascript中获得结构后:

    incoming = JSON.parse(data);
    onionarray = incoming.cards;
    
  • 还要注意,声明空数组的现代方法是

    var onionarray = [];  
    
    // not
    var onionarray = new Array()
    

    可能被愚弄:抱歉,如果这条路不是那么漂亮,但我是一个初学者:欢迎来到Stackoverflow!记住对所有有用的答案进行投票,包括对他人问题的投票。然后选择/选择你自己问题的最佳答案。可能的愚弄:对不起,如果方式不是那么漂亮,但我是一个初学者:DWelcome to Stackoverflow!记住对所有有用的答案进行投票,包括对他人问题的投票。然后选择你自己问题的最佳答案。