函数中  if(!o.sort) 这个语句没有看懂,谁能帮忙解释一下?
多谢。

解决方案 »

  1.   

    o和sort 分别表示什么。。
      

  2.   

    o是一个对象,正常情况下是一个json数组
      

  3.   

    函数定义如下:
    function obj2str(o){
       var r = [];
       if(typeof o == "string" || o == null ) {
         return o;
       }
       if(typeof o == "object"){
         if(!o.sort){
           r[0]="{"
           for(var i in o){
             r[r.length]=i;
             r[r.length]=":";
             r[r.length]=obj2str(o[i]);
             r[r.length]=",";
           }
           r[r.length-1]="}"
         }else{
           r[0]="["
          // alert(o.length);
           for(var i =0;i<o.length;i++){
             r[r.length]=obj2str(o[i]);
             r[r.length]=",";
           }
           r[r.length-1]="]"
         }
         return r.join("");
       }
       return o.toString();
    }