js解析json数据方法(JS操作JSON有哪几种方法)

本文目录
JS操作JSON有哪几种方法
这次给大家带来JS操作JSON有哪几种方法,JS操作JSON的注意事项有哪些,下面就是实战案例,一起来看一下。
JSON概述:
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不需要任何特殊的 API 或工具包。
JSON:JavaScript 对象表示法(JavaScript Object Notation)。
JSON 是存储和交换文本信息的语法。类似 XML。
JSON 比 XML 更小、更快,更易解析。
JSON 语法规则
JSON 语法是 JavaScript 对象表示法语法的子集。
数据在名称/值对中
数据由逗号分隔
花括号保存对象
方括号保存数组
好了,以上所述不是本文的重点,本文主要是对JS操作JSON的方法做下总结。
在JSON中,有两种结构:对象和数组。
1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不需要。例如:
var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"};2. 数组是值(value)的有序集合。一个数组以“”(右中括号)结束。值之间使用“,”(逗号)分隔。
例如:
***隐藏网址***
在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:
JSON字符串:
var str1 = ’{ "name": "cxh", "sex": "man" }’;JSON对象:
var str2 = { "name": "cxh", "sex": "man" };一、JSON字符串转换为JSON对象
要使用上面的str1,必须使用下面的方法先转化为JSON对象:
//由JSON字符串转换为JSON对象
var obj = eval(’(’ + str + ’)’);或者
var obj = str.parseJSON(); //由JSON字符串转换为JSON对象或者
var obj = JSON.parse(str); //由JSON字符串转换为JSON对象然后,就可以这样读取:
Alert(obj.name);
Alert(obj.sex);特别注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)。
二、可以使用toJSONString()或者全局方法JSON.stringify()将JSON对象转化为JSON字符串。
例如:
var last=obj.toJSONString(); //将JSON对象转化为JSON字符或者
var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
alert(last);相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
jquery中ajax执行顺序调整
Ajax实现loading等待效果提高用户体验
js解析json数据的几种方法
第一种方法:使用eval解析
如果服务器返回的是json字符串,那么首先要将json字符串转化为javascript对象。可以通过javascript的eval函数进行转化:代码如下:
第一个实例:
第二个实例:
第二种方法:使用Funtion函数。代码如下:
如何通过js 获取json数据
==========================================
js 中读取JSON的方法探讨
js读取JSON的方法我接触到的有两种:
方法一:函数构造定义法返回
var strJSON = "{name:’json name’}";//得到的JSON
var obj = new Function("return" + strJSON)();//转换后的JSON对象
alert(obj.name);//json name
方法二:js中著名的eval函数
var strJSON = "{name:’json name’}";//得到的JSON
var obj = eval( "(" + strJSON + ")" );//转换后的JSON对象
alert(obj.name);//json name
第二种方法需要注意的是,对象表达式{’name’:’json name’}必须用“()”扩住,否则
var strJSON = "{name:’json name’}";
var obj = eval(strJSON);
alert(obj.constructor);//String 构造函数
alert(obj.name);//undefine
必须把对象表达式扩起来eval执行才能生成一个匿名对象!
JavaScript的JSON对象如何使用
在JavaScript中,JSON对象中包含了两个方法:parse()方法、stringify()方法;使用JSON对象的这两个方法可以实现JSON字符串和JavaScript对象的互相转换。接下来的这篇文章就来给大家介绍关于JavaScript中JSON对象的使用方法。
JavaScript中JSON是什么?
JSON是一种是用于存储和传输数据的格式;一个轻量级的人类可读的,可以以逻辑方式来访问的数据集合。
JSON可以生成并存储来自用户输入的数据;可以将数据从服务器传输到客户端,从客户端传输到服务器,从服务器传输到服务器;还可以构建和验证数据。
JSON对象的使用
JSON.parse()方法
JSON对象的parse()方法可以接受JSON字符串并将其转换为对应的JavaScript对象,在返回这个对象。下面我们来看看基本句式:
JSON.parse(text )text:要解析为JSON的字符串;
reviver:可选参数,规定了在返回之前如何转换最初通过解析生成的值。
示例:
《script》
var json = ’{ "学号":"01", "姓名":"小华", "年龄":20 }’;
var student = JSON.parse(json);
//全部输出
console.log(student);
//单个输出
console.log("学号:"+student.学号);
console.log("姓名:"+student.姓名);
console.log("年龄:"+student.年龄);
《/script》运行效果如下:我们来看看输出
JSON.stringify()方法
JSON对象的stringify()方法可以将JavaScript值转换为对应的JSON字符串,再返回这个JSON字符串。下面我们来看看基本句式:
Json.stringify(value )value:指定要转换为JSON字符串的js值。
Replacer:可选参数,可以改变字符串化过程行为数。如果指定了replacer函数,它将替换值;如果指定了replacer数组,则它仅包含指定的属性。
space:可选参数,一个String或Number对象,用于将空白插入输出JSON字符串以便于阅读。
示例:将JavaScript字符串对象和数组对象,转换为JSON字符串
//JavaScript字符串对象
var json = { 学号:"01", 姓名:"小华", 年龄:20 };
var student = JSON .stringify(json);
console.log(student);
//JavaScript数组对象
var arr = ;
var bc = JSON .stringify(arr);
console.log(bc);输出:
总结:
js怎么解码被json的数据
解析json数据
var json = { contry:{ area:{ man:"12万", women:"10万" } } };
//方式一:使用eval解析
var obj = eval(json);
alert(obj.constructor);
alert(obj.contry.area.women);
//方式二:使用Funtion函数
var strJSON = "{name:’json name’}";//得到的JSON
var obj = new Function("return" + strJSON)();//转换后的JSON对象
alert(obj.name);//json name
alert(obj.constructor);
//复杂一点的json数组数据的解析
var value1 = ; var obj1 = eval(value1);
alert(obj1.c01);
//复杂一点的json的另一种形式
var value2 = {"list":};
var obj2 = eval(value2);
alert(obj2.list.password);

更多文章:
电脑桌面倒计时代码(找个倒计时的程序,可以设定一个时间在桌面上同时显示距离多少天,多少小时,多少秒)
2025年6月24日 09:30
足球史上臭名昭著的诺坎普惨案是怎么回事?第二次世界大战中的三大惨案是 什么→
2025年6月22日 20:30
java代码走查工具(java中,代码检查工具check-style检查出来的错误很多,请教各位,有什么快速修改的方法不)
2026年4月25日 20:45
瑞士军刀有多可怕(相比于武器,多功能且实用的瑞士军刀是如何制造出来的)
2026年6月30日 01:15
summerholiday读音(summer是什么意思中文翻译)
2026年3月3日 22:00
paper软件下载(小红车wallpaper电脑端怎么下载)
2025年12月21日 15:15
甲骨文数据库价格(SQL数据库和甲骨文数据库的好处和坏处求解答!(甲骨文的数据库有什么用))
2026年4月11日 08:00
parent属性(js使用parent.parent会有影响吗)
2026年3月18日 23:30
sqlserver查询前10条记录(关于SQL查询前10条记录)
2025年7月19日 08:15














