2016-12-17 1 views
0

dies ist eine grundlegende Zeichenfolge Antwort:Stopp Ändern Bestellen In json analysieren

response = "[{"prefixtodomid":"Sat17Dec2016103310GMT","todo_title":"task 3 changed","is_done_todo":false,"todo_subtitle_field":"\u00a0","prefix_pro_due_date":"","multicheckbox":false,"project_file_list":""},{"prefixtodomid":"Sat17Dec2016103313GMT","todo_title":"ce","is_done_todo":false,"todo_subtitle_field":"\u00a0","prefix_pro_due_date":"","multicheckbox":false,"project_file_list":""},{"prefixtodomid":"Sat17Dec2016103318GMT","todo_title":"dewdw","is_done_todo":false,"todo_subtitle_field":"\u00a0","prefix_pro_due_date":"","multicheckbox":false,"project_file_list":""},{"prefixtodomid":"Sat17Dec2016103321GMT","todo_title":"task 4","is_done_todo":false,"todo_subtitle_field":"\u00a0","prefix_pro_due_date":"","multicheckbox":false,"project_file_list":""},{"prefixtodomid":"Sat17Dec2016181953GMT","todo_title":"task 5","is_done_todo":false,"todo_subtitle_field":"\u00a0","prefix_pro_due_date":"","multicheckbox":false,"project_file_list":{"43":"http:\/\/example\/intra\/wp-content\/uploads\/2016\/11\/1project.png","26":"http:\/\/example\/intra\/wp-content\/uploads\/2016\/11\/2016--\u2039-Le-Blog-OSD-\u2014-WordPress_437.png"}},{"prefixtodomid":"Sat17Dec2016181957GMT","todo_title":"cewcwcwecw","todo_subtitle_field":"\u00a0","project_file_list":{"26":"http:\/\/example\/intra\/wp-content\/uploads\/2016\/11\/2016-10-16-15_26_04-Unyson-\u2039-Le-Blog-OSD-\u2014-WordPress_437.png"}}]" 

ich es analysiert, um JSon wie:

var obj = jQuery.parseJSON(response); 

jetzt ich durch dieses bin Looping:

for (var i = 0; i<Object.keys(obj).length; i++) { 
       (function(index){ 

        var haveimage = obj[i].project_file_list; 

        if(haveimage){ 
         // other logic 
        } 

       })(i); // pass the value of i 
      } 

hereImage zeigt das Bild immer in der Reihenfolge der ID des Bildes an, auch wenn wir die Reihenfolge in der Antwortzeichenfolge ändern, parseJSON Methode chang Die Reihenfolge von ID wieder, gibt es eine Lösung, um dies zu überwinden?

Wenn nicht, gibt es noch etwas, das ich anstelle von parseJSON verwenden kann?

Danke :)

+0

Ich habe noch nie dieses Verhalten bemerkt, bevor ... haben Sie JSON.parse versucht()? –

+0

Ihr JSON analysiert ein Array von Objekten. Sie verwenden nicht 'Object.keys()' auf einem Array – charlietfl

+0

@charlietfl Vielen Dank für die Antwort, sorry, könnten Sie mehr Details geben, ich überprüfe ist es Array in Logik mit Spleißmethode, aber das Ding ist das Array selbst ist nach JSON.parse sortiert, ich bin nicht sicher, was ich mit .keys nach dem Parsing oder noch davor machen soll. –

Antwort

2

Ein Objekt ist eine ungeordnete Menge von Name/Wert-Paaren.

können Sie Array verwenden, um die Ordnung aufrecht zu erhalten:

[ 
    { 
     "43":"http:\/\/example\/intra\/wp-content\/uploads\/2016\/11\/1project.png" 
    }, 
    { 
     "26":"http:\/\/example\/intra\/wp-content\/uploads\/2016\/11\/2016--\u2039-Le-Blog-OSD-\u2014-WordPress_437.png" 
    } 
] 
+0

Danke für die Antwort, ich denke, das kann verwendet werden. Kannst du mir eine kurze Information darüber geben, wie man ein Array aus meiner Antwort erstellt? Ich habe versucht mit Split-Funktion, aber es verursacht das Problem, da ich nicht teilen kann, oder,}, gibt es unerwünschte Zeichen, gibt es andere Funktion dafür? Danke noch einmal . –