JavaScript Json对象和Json对象字符串的关系 jsonObj<->JsonString

如下示例:

直接写的a1就是一个Json对象,a2 就是一个Json对象字符串; 通过eval函数 得到的 都是Json对象, 不管参数是对象还是 字符串.

 function JTS(o){
var arr = [];
var fmt = function(s) {
if (typeof s == "object" && s != null)
return JTS(s);
return /^(string|number)$/.test(typeof s) ? "\"" + s + "\"" : s;
}
for (var i in o)
arr.push("\"" + i + "\":" + fmt(o[i]));
return "{" + arr.join(",") + "}";
}
12
//Json 对象
var a1=[{"n1":"n1t","n2":"23","n3":"1"},{"n2":"n2t","n2":"12","n3":"1"},{"n3":"n3t","n2":"64","n3":"3"},{"n4":"n4t","n2":"78","n3":"4"},{"n5":"n5t","n2":"34","n3":"1"},{"n6":"n6t","n2":"56","n3":"4"},{"n7":"n7t","n2":"2","n3":"3"},{"n8":"n8t","n2":"1","n3":"4"}];
//Json对象字符串
var a2="[{\"n1\":\"n1t\",\"n2\":\"23\",\"n3\":\"1\"},{\"n2\":\"n2t\",\"n2\":\"12\",\"n3\":\"1\"},{\"n3\":\"n3t\",\"n2\":\"64\",\"n3\":\"3\"},{\"n4\":\"n4t\",\"n2\":\"78\",\"n3\":\"4\"},{\"n5\":\"n5t\",\"n2\":\"34\",\"n3\":\"1\"},{\"n6\":\"n6t\",\"n2\":\"56\",\"n3\":\"4\"},{\"n7\":\"n7t\",\"n2\":\"2\",\"n3\":\"3\"},{\"n8\":\"n8t\",\"n2\":\"1\",\"n3\":\"4\"}]"; //eval(JsonObj) => JsonObj
//eval(JsonString) => JsonObj function gow()
{ alert( JTS(eval(a2)) );
alert(JTS(a1)); }

当然,你也 可以直接定义一个对象:

//定义一个对象
var a3={}

JavaScript Json对象和Json对象字符串的关系 jsonObj<->JsonString的更多相关文章

  1. JSON(二)——JavaScript中js对象与JSON格式字符串的相互转换

    首先我们来看一下js中JSON格式的字符串 var JSONStr1 = "{\"name\" : \"张三\"}"; 注意以下的写法不是j ...

  2. javascript对象序列化(对象与JSON字符串的互换)

    前一段时间用到h5的本地存储---需要把某个js对象存储在浏览器的本地存储中,用到了javascript对象的序列化与反序列化 所谓的序列化就是将对象的状态信息转换为可以存储或传输的形式的过程,基本上 ...

  3. JSON.stringify()方法是将一个javascript值(对象或者数组)转换成为一个JSON字符串;JSON.parse()解析JSON字符串,构造由字符串描述的javascript值或对象

    JSON.stringify()方法是将一个javascript值(对象或者数组)转换成为一个JSON字符串:JSON.parse()解析JSON字符串,构造由字符串描述的javascript值或对象

  4. JavaScript对象与JSON字符串的相互转换

    JSON(JavaScript Object Notation) 是JavaScript编程语言的一个子集.正因JSON是JavaScript的一个子集,所以它可清晰的运用于此语言中. eval函数 ...

  5. JSON 字符串转换为JavaScript 对象.JSON.parse()和JSON.stringify()

    使用 JavaScript 内置函数 JSON.parse() 将字符串转换为 JavaScript 对象: var text = '{ "sites" : [' + '{ &qu ...

  6. javascript、js操作json对象和字符串互相转换方法

    相信前端的同学们对json并不陌生,接触过很多.但是很少人知道json的全称是什么,哈哈,我也是查资料知道的.(JSON JavaScript Object Notation是一种轻量级的数据交换格式 ...

  7. JavaScript对象、JSON对象、JSON字符串的区别

    一.首先看下什么是JSON JSON:JavaScript Object Natation,JavaScript对象的表现形式,已经发展成一种轻量级的数据交换格式. JavaScript对象的表现形式 ...

  8. javascript:json对象和json字符串的相互转换

    json对象和字符串的相互转换 //使用json中的parser方法转换: var str='{"name":"fendouer", "age&quo ...

  9. json对象和json字符串之间的转换-JavaScript实现

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

随机推荐

  1. 控制台游戏引擎CGE——贪吃蛇

    今天我也来发一个控制台游戏.先看图: 缘起 LZ是一个有严重拖延症的人,表现的形式就是隔一段时间就要刷一刷博客园. 这不前几天,看到了魏大师<使用Lua脚本语言开发出高扩展性的系统...> ...

  2. Java基础加强之多线程篇(线程创建与终止、互斥、通信、本地变量)

    线程创建与终止 线程创建 Thread类与Runnable接口的关系 public interface Runnable { public abstract void run(); } public ...

  3. 封装jdbc 单例模式的应用

    实现增删该查的jdbc封装 import java.io.IOException; import java.io.InputStream; import java.sql.Connection; im ...

  4. install hdp 2.2 on ubuntu 14.04

    http://www.swiss-scalability.com/2014/12/install-hdp-22-on-ubuntu-1404-trusty.html 在新加节点上运行 sed -e & ...

  5. mac-改造你的terminal

    今天在知乎上看到了一篇关于<程序员如何优雅使用Mac>,里面介绍了不少Mac的高端使用技巧,其中关于terminal的部分更是深深的吸引了我,于是我也开始了我的terminal改造计划. ...

  6. Ubuntu配置Tomcat9非root用户启动

    unix类系统的root用户具有极大的权利,所以很多时候我们不希望程序以root身份启动,这也就是配置Tomcat以指定身份(非root)启动的初衷,虽然也没人来攻击我的服务器,但本着学习学习的目的, ...

  7. python基本图像操作与处理

    # -*- coding: utf-8 -*- from PIL import Image from pylab import * #添加中文支持 from matplotlib.font_manag ...

  8. 如何设置GridView中某个字段显示数据的一部分?

    后台方法: /// <summary> /// 截取字符串 /// </summary> /// <param name="str">要截取的字 ...

  9. 用Eclipse搭建ssh框架

    问:ssh是哪三大框架,以及他们的作用是什么? 答:分别是struts,spring,hibernate. struts的作用是:是web层,其核心是mvc模式,他可以自动获取参数,自动类型转换,自动 ...

  10. grunt-connect-proxy解决开发时跨域问题

    最近的项目中前后端是完全分离开发的,前端用grunt管理项目.这样就会导致一个问题:开发时前端调用后台的接口时因为不在一个服务器,所以会出现跨域问题.但是也不能用JSONP或CROS方式实现真正的跨域 ...