Json values ​​in jQuery foreach loop

I get the following JSON response from the server:

[{"id":"1","pid":"0","type":"Individual","code":"i","status":"1"}, {"id":"2","pid":"0","type":"Group","code":"g","status":"1"}, {"id":"15","pid":"0","type":"asdasd","code":"asd","status":"1"}, {"id":"16","pid":"0","type":"asdas","code":"asd","status":"1"}, {"id":"17","pid":"0","type":"my check","code":"mt","status":"1"}] 

How can I create a jQuery foreach loop and get only id and type values.

+6
source share
4 answers
  var json = '[{"id":"1","pid":"0","type":"Individual","code":"i","status":"1"},{"id":"2","pid":"0","type":"Group","code":"g","status":"1"},{"id":"15","pid":"0","type":"asdasd","code":"asd","status":"1"},{"id":"16","pid":"0","type":"asdas","code":"asd","status":"1"},{"id":"17","pid":"0","type":"my check","code":"mt","status":"1"}]'; $.each($.parseJSON(json), function() { alert(this.id + " " + this.type); }); 
+15
source
 var json = [ {"id":"1","pid":"0","type":"Individual","code":"i","status":"1"}, {"id":"2","pid":"0","type":"Group","code":"g","status":"1"}, {"id":"15","pid":"0","type":"asdasd","code":"asd","status":"1"}, {"id":"16","pid":"0","type":"asdas","code":"asd","status":"1"}, {"id":"17","pid":"0","type":"my check","code":"mt","status":"1"} ]; $.each(json,function(i,el) { alert(el.id+' - '+el.type); }); 

Here this dumb example works

EDIT:

As enoyhs said this can also be achieved with pure javascript, which would be a faster solution. Here is the benchmark for loops in javascript vs jQuery:

+9
source

A working example is here: http://jsfiddle.net/ezmilhouse/emCT8/

Snippet to create a new array of objects that contain only the id and type keys:

 var json = [{"id":"1","pid":"0","type":"Individual","code":"i","status":"1"},{"id":"2","pid":"0","type":"Group","code":"g","status":"1"},{"id":"15","pid":"0","type":"asdasd","code":"asd","status":"1"},{"id":"16","pid":"0","type":"asdas","code":"asd","status":"1"},{"id":"17","pid":"0","type":"my check","code":"mt","status":"1"}]; var arr = []; $.each(json, function(key, value){ arr.push({ id: value.id, type: value.type }); }); console.log(arr); 
+2
source

Try:

 <script type="text/javascript"> $(document).ready(function () { var x = { "A" : {"A1": "1" } }; $.each(x, function(i,v) { alert(i); console.log(i); }); }); </script> 
0
source

Source: https://habr.com/ru/post/886392/


All Articles