Динамически создавать и удалять JavaScript и ключ ассоциативного массива и значения - PullRequest
0 голосов
/ 06 сентября 2011

Я использую jQuery 1.6

Я не очень хорошо разбираюсь в JavaScript и мне нужно динамически создавать массив, имеющий 2 динамических параметра: json.id и json.name.

создание массива должно привести к:

[

[json.id]
         [ 
           json.name,
             json.name,
              json.name,
                etc .....
         ]
[json.id]
          [
           json.name, 
             json.name,
               json.name,
                  etc ....
         ]
etc ...
]

Тогда мне нужно иметь возможность удалить json.id или json.id json.name ....

Кто-нибудь может показать мне, какчтобы сделать это с поддержкой всех браузеров?

thx [EDITED]

логика такова: (в надежде, что все понятно: P)

    //first ajax call result:
    [{json.id_parent:json.name,json.id_parent:json.name,json.id_parent:json.name, etc..}]

    //second ajax call results passing the json.id_parent:
    [{json.id_parent_child:json.name,json.id_parent_child:json.name,json.id_parent_child:json.name,etc...}]
    //now for each call = id_parent create an associative array: 

{ 
id_parent:{id_parent_child,id_parent_child,etc ....},
id_parent:{id_parent_child,id_parent_child,etc ....},
etc...
}

1 Ответ

1 голос
/ 06 сентября 2011
    var myJson = {'id39':{'name':'Jesus','age':33}};
    var idDel = 'id39';
    delete myJson[idDel];// delete the complete reference with id
    var propDel = 'name';
    delete myJson[idDel][propDel];// delete only the property 'name' of the reference with id
// parsing complete json
    $.each(myJson, function(key, obj){// parse objects
      if(condition){
        delete myJson[key];// delete reference
      }
      $.each(obj, function(propName, val){// parse properties
        if(condition){
          delete obj[propName];// delete property
        }
      }
    });

Обратите внимание, что в этом примере предполагается, что вы использовали объекты json вместо массивов, поэтому гораздо проще и быстрее удалить вложенные объекты или свойства ...

...