jquery里把数组转换成json的方法
首先来看,jquery里自带的,和json相关的函数:
1.$.parseJSON : 用来解析JSON字符串,返回一个对象。
什么叫“JSON字符串”?
比如:
var a={name:"aijquery",url:"www.aijquery.cn"};
上面定义的变量a是个JSON对象,我们可以直接用“a.name”或“a.url”来访问内容的数据。
var a="{name:'aijquery',url:'www.aijquery.cn'}";
上面定义的变量a就是一个符合JSON数据结构的字符串,可以叫做“JSON字符串”.
PS:关于$.parseJSON的用法,可以参考站长以前写的这篇文章:
jquery里把字符串转为json对象的四种方法,及每种方法的优缺点
2. serializeArray() : 序列化表格元素 ,返回JSON数据结构数据。
虽然函数里有个"Array",但和本篇我们要说的“数组转JSON”无关,serializeArray()这个函数是用来获取表单数据的,和serialize()不同,serializeArray()返回的是JSON格式的数据。
因为jquery就是在JS的基础上而来的,所以一些JS里的函数,我们在jquery里也是能直接用的,下面来看看JS里和JSON相关的两个函数:
JSON.parse(text) : 用于将一个 JSON 字符串转换为JSON对象。
JSON.stringify() : 用于将一个"值"转换为 JSON 字符串。
本章我们要说的,把数组转换成JSON,主要用到的就是 " JSON.stringify() ",和以前一样,我们直接通过实例来学习:
实例1:简单的数组:
var data =["a","b","c"];
var d =JSON.stringify(data);
console.log(d); //["a","b","c"]
console.log($.type(d)); // string
下面是上面这段代码的运行结果:
[jquery里把数组转换成json的方法[精心整理]_1]
从上面的代码里,我们可以看出,JSON.stringify() 确实是把数组转换成了字符串,但是这个字符串并不是“JSON字符串”,原因就是,在JSON里,数据都是“名字:值”这样配对的形式的,但上面这个数组太过简单,只是个一维数组,所以不能转换成“JSON字符串”的。
实例2:二维数组:
01:第一种形式的二维数组:
var data =[["a","aa"],["b","bb"],["c","cc"]];
var d =JSON.stringify(data);
console.log(d); //[["a","aa"],["b","bb"],["c","cc"]]
console.log($.type(d)); //string
运行结果如下:
[jquery里把数组转换成json的方法[精心整理]_2]
很明显,这个结果也不是我们想要的,因为转换后的字符串,并不是“JSON字符串”。
02:第二种形式的二维数组:
var data =new Array();
data[0]=new Array();
data[0][0]="a";
data[0][1]="aa";
data[1]=new Array();
data[1][0]="b";
data[1][1]="bb";
var d =JSON.stringify(data);
console.log(d); //[["a","aa"],["b","bb"]]
console.log($.type(d)); //string
运行结果截图如下:
[jquery里把数组转换成json的方法[精心整理]_3]
很明显,这也不是我们想要的结果。。。。。
03:再换一种写法:
var data =new Array();
data[0]=new Array();
data[0]["name"]="a";
data[0]["val"]="aa";
data[1]=new Array();
data[1]["name"]="b";
data[1]["val"]="bb";
var d =JSON.stringify(data);
console.log(d); //[[],[]]
console.log($.type(d)); //string
看这次的运行结果:
[jquery里把数组转换成json的方法[精心整理]_4]
与我们想要的结果更远了,不过不要急,还有最后一种:
04:最后一种写法,直接把数据定义成对象:
var data ={};
data[0]={};
data[0]["name"]="a";
data[0]["val"]="aa";
data[1]={};
data[1]["name"]="b";
data[1]["val"]="bb";
var d =JSON.stringify(data);
console.log(d); //{"0":{"name":"a","val":"aa"},"1":{"name":"b","val":"bb"}}
console.log($.type(d)); //string
下面是截图:
[jquery里把数组转换成json的方法[精心整理]_5]
摘自 爱jQuery:http://www.aijquery.cn/Html/jqueryjiqiao/179.html
jquery里把数组转换成json的方法的更多相关文章
- $.toJSON的用法或把数组转换成json类型
1. html页面全部代码 <html> <head> <title></title> <script src="../../S ...
- 字符串集合或字符串数组转换成json数组
字符串可以是List<String>类型的字符串集合,也可以是String[]类型的字符串数组,二者转换成JSON数组的方式没有什么不同.下面代码注意关键的部分即可(画红线部分). 1. ...
- 将字典或者数组转换成JSON数据或者字符串
将字典或者数组转换成JSON数据或者字符串 源码: NSDictionary+JSON.h 与 NSDictionary+JSON.m // // NSDictionary+JSON.h // Cat ...
- C#中对象,字符串,dataTable、DataReader、DataSet,对象集合转换成Json字符串方法。
C#中对象,字符串,dataTable.DataReader.DataSet,对象集合转换成Json字符串方法. public class ConvertJson { #region 私有方法 /// ...
- 数组转换成json
下面是详细的步骤,也可参考http://blog.csdn.net/wangliqiang1014/article/details/19924727 iOS数组可以转换车json对象,转换代码:NSS ...
- js数组转换成json串 (JSON.stringify)
例如: var giftlist[1490011777] = []; giftlist[1490011777]['id'] = 1490011777; giftlist[1490011777]['na ...
- 数组转换成json key-value形式
eg1(数组中包含的是数组): var jsonData = {}; var arr = [[1, 'boy', 'dabing'], [2, 'girl', 'dabing']]; for (var ...
- php数组转换成json格式。
{ "touser":"OPENID", "template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0t ...
- C#转换成Json的方法集
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Te ...
随机推荐
- 使用dockerfile 搭建django系统(nginx+redis+mongodb+celery)
背景 有需求需要对django系统进行docker化,以达到灵活部署和容灾.该系统基于django 2.2版本开发,数据库采用mongodb,服务器使用nginx,因系统有部分异步任务,异步任务则采用 ...
- leetCode算法——1TwoSum(两数之和)
描述: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中 ...
- (八)Spring 事务管理
目录 文章目录 @[toc] **`Spring`** 事务管理 `Api` 介绍之 **`PlatformTransactionManager`** 后记 #Spring 的事务管理 编程式事务管理 ...
- C++继承种类
- Go语言学习之数据类型
### Go语言学习之数据类型 数据类型的转换 1.Go语言不允许隐式类型转换(显示转换才可以) 2.别名和原有类型也不能进行隐式类型转换 例子: func TestImplicit(t *testi ...
- python3启航
Python3的基本数据类型 数字 int ,所有功能都放在int里 a1 = 123 a2 = 456 ##int 将字符串转换为数字 a = "123" print(tyep( ...
- java lesson09总结
package Super; public class SuperTest { String color; // public SuperTest(String color) {this.colo ...
- 客户端相关知识学习(十)之app给h5传递数据
方法一: app可以把参数传到h5的链接里,用类似?xx=xx&xx=xx的形式拼接,js解析参数即可. 方法二: 情况一:app调用h5 原生app都可以对js的function进行触发,前 ...
- [NOIP10.5模拟赛]1.a题解--离散化+异或线段树
题目链接: 咕咕咕 https://www.luogu.org/problemnew/show/CF817F 闲扯 在Yali经历几天折磨后信心摧残,T1数据结构裸题考场上连暴力都TM没打满 分析 观 ...
- python 读取文件行
将文件转化成二进制码,并读取行数,计算总行数 import os Str=input("请输入路径") Sum=0 def read(Str): a = os.listdir(St ...