Javascript 停止更改json解析中的顺序

Javascript 停止更改json解析中的顺序,javascript,json,parsing,Javascript,Json,Parsing,这是基本的字符串响应: 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":"Sat17Dec20161

这是基本的字符串响应:

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"}}]"
我将其解析为json,如下所示:

var obj = jQuery.parseJSON( response );
现在,我循环介绍一下:

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
            }

for(var i=0;i对象是一组无序的名称/值对

您可以使用数组来维护订单:

[
   {
      "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"
   }
]

我以前从未注意到这种行为……您是否尝试过JSON.parse()?您的JSON将解析为一个对象数组。您不使用
Object.keys()
在计算机上array@charlietfl感谢您的回复,对不起,您能提供更多详细信息吗?我正在使用splice方法检查它的逻辑数组,但问题是数组本身是在JSON.parse之后排序的,我不确定在解析之后或之前如何处理.keys。@Steve yup,已经检查过了,它是相同的。因为obj是一个数组,
 对象键(obj).length
相当于
obj.length
。感谢您的回复,我认为这是可以使用的。您能给我一些关于如何从我的回复中创建数组的快速信息吗?我尝试过使用拆分函数,但它导致了问题,因为我无法拆分,或者,},有不需要的字符,有其他函数吗?再次感谢。