2016-05-31 16 views
0

Ich bin mir nicht sicher, ob ich nur albern bin, obwohl ich nicht in der Lage, dies überall zu finden, aber ich bin json_encode() inging einige Datenbankausgaben und die Ausgabe von ihnen auf die Seite, und sie zu lesen mit $.parseJSON, aber ich möchte einen bestimmten Wert aus dem Array erhalten. Hier ist ein Beispiel für das, was ich erreichen möchte.Get spezifischen Array-Wert Javascript

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 

var json = $.parseJSON(j); 
$(json).each(function(i, val) { 
    $.each(val, function(k, v) { 
    console.log(k['uid']) // <-- This is where I want to just output the UID from each array results 
}); 

nun in Worte zu fassen, was ich möchte erreichen, nur die UID (oder Namen oder profile_img, nur einen Wert im Allgemeinen) zieht aus dieser Reihe, so kann ich später die Werte einfügen in ein div.

Jede Hilfe wird sehr geschätzt, danke!

+0

Haben Sie versucht, es auszuführen? Haben Sie einen Fehler erhalten? Wo steckst du fest? – gravityplanx

Antwort

3
  • Es ist nicht erforderlich, verschachtelte .each zu verwenden, da kein verschachteltes Array vorhanden ist.
  • Zweites Argument in callback(A function to execute for each element) ist das Element in der aktuellen Schleife, nicht das erste Argument iteriert.

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 
 

 
var json = $.parseJSON(j); 
 
$(json).each(function(i, val) { 
 
    console.log(val['uid']); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

I jQuery für diese Manipulation vermieden hätte.

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 
 
var parsed = JSON.parse(j); 
 
var uids = parsed.map(function(item) { 
 
    return item.uid; 
 
}); 
 
console.log(uids);

0

Nein 2. Ebene von each erforderlich.

versuchen Sie dies:

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 
 

 
var json = $.parseJSON(j); 
 
$.each(json, function (i, obj) { 
 
\t console.log(obj.uid); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

1

try this: -

mit JS nur:

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 
j = JSON.parse(j); 
j.map((value)=>{ 
    console.log(value['uid']) 
}); 

Mit jQuery: -

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 

var json = $.parseJSON(j); 
$(json).each(function(i, val) { 
    console.log(val['uid']); 
}); 
0

nach dem JSON-Objekt in eine Array Liste Parsen Sie nur Vanille-Map-Funktion, wie unten

function stuff(item,index) { 
    //Here can do any manipulation with your object 
    return item.uid; 
} 

function myFunction() { 
    document.getElementById("myDiv").innerHTML = myArrayList.map(stuff); 
} 
0

Diese von möglicherweise Hilfe Ihnen verwenden können.

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 

     var json = $.parseJSON(j); 
     var l=json.length; 
     var arr=[]; 
     for(var i=0;i<l;i++){ 
      arr.push(json[i]['uid']); 
     } 
     console.log(arr);//you can use this array for whatever purpose you intend to 
0

Nicht unbedingt Jquery!

var j = '[{"uid":"1","name":"Bingo Boy", "profile_img":"funtimes.jpg"},{"uid":"2","name":"Johnny Apples", "profile_img":"badtime.jpg"}]'; 
var parsedJson = JSON.parse(j); 
var uidsArray = parsedJson.map(function(entry){ 
    return entry.uid; 
}); 

console.log(uidsArray); // output: [1,2]