JavaScript序列化对象

 

代码
function serialize(obj) {
    
var returnVal; 
    
if (obj != undefined) {
        
switch (obj.constructor) {
            
case Array:
                
var vArr = "[";
                
for (var i = 0; i < obj.length; i++
                {
                    
if (i > 0) vArr += ",";
                    vArr 
+= serialize(obj[i]);
                }
                 vArr 
+= "]"
                 
return vArr;
            
case String:
             returnVal 
= escape("'" + obj + "'");
                     
return returnVal;
            
case Number:
             returnVal 
= isFinite(obj) ? obj.toString() :
                  
null;
                 
return returnVal;
            
case Date: returnVal = "#" + obj + "#";
                 
return returnVal;
            
default:
                 
if (typeof obj == "object")
               {
                   
var vobj = []; for (attr in obj) 
                    {
                        
if (typeof obj[attr] != "function")
                         {
                            vobj.push(
'"' + attr + '":' + serialize(obj[attr]));
                         }
                    }
                    
if (vobj.length > 0
                    
return "{" + vobj.join(","+ "}";
                    
else return "{}";
                }
                
else 
                {
                    
return obj.toString();
                } 
        }
    }
     
return null;
}

 

 



(全文完)


以下为广告部分

您部署的HTTPS网站安全吗?

如果您想看下您的网站HTTPS部署的是否安全,花1分钟时间来 myssl.com 检测以下吧。让您的HTTPS网站变得更安全!

SSL检测评估

快速了解HTTPS网站安全情况。

安全评级(A+、A、A-...)、行业合规检测、证书信息查看、证书链信息以及补完、服务器套件信息、证书兼容性检测等。

SSL证书工具

安装部署SSL证书变得更方便。

SSL证书内容查看、SSL证书格式转换、CSR在线生成、SSL私钥加解密、CAA检测等。

SSL漏洞检测

让服务器远离SSL证书漏洞侵扰

TLS ROBOT漏洞检测、心血漏洞检测、FREAK Attack漏洞检测、SSL Poodle漏洞检测、CCS注入漏洞检测。

posted @ 2009-12-17 22:53  麒麟  阅读(800)  评论(0编辑  收藏  举报