javascript JSON解析函数

JSON=function(){
 return{
 encode:function(o){//编码JSON对象
   var
str=‘‘;
   if(typeof(o.length)==‘number‘)
   {
    str=‘[‘;
    for(var
i=0;i<o.length;i++)
    {
     if(o[i]==null)
      str+=‘null‘;
     else{
      var
t=typeof(o[i]);
      switch(t){
      case
‘string‘:
       str+=‘"‘+o[i].replace(‘"‘,‘//"‘)+‘"‘;
       break;
      case
‘object‘:
       str+=this.encode(o[property]);
       break;
      case
‘number‘:
       str+=o[i];
       break;
      case
‘null‘:
       str+=property+‘:null,‘;break;
      case
‘function‘:
       str+=[i].toString();
       break;
      }
     }
     if(i<o.length-1)str+=‘,‘;
    }
    return
str+‘]‘;
   }else{
    str=‘{‘;
    for(var property in
o)
    {
     
     if(o[property]==null)
      str+=property+‘:null,‘;
     else
     {
      var
t=typeof(o[property]);
      switch(t){
      case
‘string‘:
       str+=property+‘:"‘+o[property].replace(‘"‘,‘//"‘)+‘",‘;
       break;
      case
‘object‘:
       str+=property+":"+this.encode(o[property])+‘,‘;
       break;
      case
‘number‘:
       str+=property+":"+o[property]+‘,‘;
       break;
      case
‘function‘:
       str+=property+":"+o[property].toString()+‘,‘;
       break;
      }
     }
    }
   }
   if(str.length>0)
return str.substr(0,str.length-1)+‘}‘;
   return
str+‘}‘;
  },
 decode:function(str){//解析json文本
  try{
   return
eval(‘(‘+str+‘)‘);
  }catch (e){
  }
   alert(‘error‘);
   return
null;
  }
 }
}();

用法:

var
obj=function(){
 return{
 ID:500,
 NAME:‘何正明‘,
 STATUS:‘online‘,
 SEX:null,
 ARRAY:[1,2],
 func:function(){
  return
‘aaa‘;
 }
 };
}();
function doparse(){
var newstr
=JSON.encode(obj)
alert(newstr);
var
newobj=JSON.decode(newstr);
alert(newobj.SEX);
}

时间: 2024-10-07 16:28:40

javascript JSON解析函数的相关文章

javascript.json snippets vscode 注释

vscode vue js里面的注释 javascript.json { // Place your global snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and // description. Add comma separated ids of the languages where the snippet is applicable in the sc

JavaScript JSON 与 AJAX

JavaScript JSON 与 AJAX JSON 是一种轻量的数据交互格式,与 AJAX 配合完成前端与服务端的信息传递,本文介绍 JSON 的使用.原生 AJAX 写法.JSONP 跨域解决方法以及 AJAX 和 JSONP 工具函数的封装 JSON 的概念 所有编程语言都离不开的三大数据结构 scalar 标量:数字和字符串 sequence 序列:数组和列表 mapping 映射:键值对 JSON:JavaScript Object Notation,轻量级的数据交互格式 JSON

JavaScript &ndash; JSON

一种数据格式,太常用了. ES5中定义了一个全局对象JSON,有两个方法:stringify()和parse(),分别用于序列化和解析. 1. JSON的序列化 var person = { name: 'smallSan', age: 21, job: null, '': 123, title: window.undef, // 并没有该属性 sayName: function(){ console.info(this.name); } }; JSON.stringify(person); /

javascript json字符串与对象相互转换

在实际项目中,经常遇到字符格式的问题,记下来以便日后方便查看.用到两个函数:JSON.stringify() 和 JSON.parse(). 使用ajax向后台请求数据,后台给前端返回数据,明明后端脚本写的是json函数处理后的json格式,但是前端接收数据时,却时而是object,时而是字符串,令人百思不得其解.具体原因我还不是很清楚. 在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象.所以,JSON对象和JSON字符串之间的相互转换是关键 我的解决思路是:

JavaScript Json(转)

JSON是JavaScript Object Notation的缩写,它是一种数据交换格式. 终于,在2002年的一天,道格拉斯·克罗克福特(Douglas Crockford)同学为了拯救深陷水深火热同时又被某几个巨型软件企业长期愚弄的软件工程师,发明了JSON这种超轻量级的数据交换格式. 道格拉斯同学长期担任雅虎的高级架构师,自然钟情于JavaScript.他设计的JSON实际上是JavaScript的一个子集.在JSON中,一共就这么几种数据类型: number:和JavaScript的n

C/C++,Java,PHP,JavaScript,Json数组、对象赋值时,最后一个元素后面是否可以带逗号?

1 C,C++,Java,PHP都能容忍末尾的逗号 C,C++,Java中对数组赋值时,最后一个元素末尾的逗号可有可无.下面两行代码对这些语言来说是等效的. int a[] = {1,2,3}; /* 正确 */ int a[] = {1,2,3,}; /* 正确 */ PHP这一点也继承了C的特点,下面的两行代码等效. $a = array(1,2,3); /* 正确 */ $a = array(1,2,3,); /* 正确 */ 2 JavaScript视末尾逗号为语法错误! 然而到了Jav

Sublime Text插件:HTML+CSS+JAVASCRIPT+JSON快速格式化[转]

今天在github上乱逛,无意间找到victorporof分享的htmlpretty插件,特做推荐: 先看看他是怎么描述htmlpretty的: This is a Sublime Text 2 and 3 plugin allowing you to format your HTML, CSS, JavaScript and JSON code. It uses a set of nice beautifier scripts made by Einar Lielmanis. The form

JavaScript JSON 格式操作

关于JSON,最重要的是要理解它是一种数据格式,而不是一种编程语言.虽然具有相同的语法,但JSON并不从属于JavaScript.而且,并不是只有JavaScript才使用JSON,毕竟JSON只是一种数据格式.很多编程语言都有针对JSON的解析器和序列化器. 首先,说一下JSON的语法,JSON由三种类型组成,简单.对象.数组.简单值包括数值.字符串.布尔值.null.对象由一组键值对组成,其中可以嵌套数组和对象.数组表示一组有序的值得列表,可以包含数组和对象. console.log(JSO

松软科技Web课堂:JavaScript JSON

JSON 是存储和传输数据的格式. JSON 经常在数据从服务器发送到网页时使用. 什么是 JSON? JSON 指的是 JavaScript Object Notation JSON 是轻量级的数据交换格式 JSON 独立于语言 * JSON 是“自描述的”且易于理解 * JSON 的语法是来自 JavaScript 对象符号的语法,但 JSON 格式是纯文本.读取和生成 JSON 数据的代码可以在任何编程语言编写的. JSON 实例 JSON 语法定义了一个雇员对象:包含三条员工记录的数组(