javascript中的json方法有哪些


本文摘自PHP中文网,作者青灯夜游,侵删。

javascript中的json方法:1、“JSON.parse()”方法,用于将一个JSON字符串转换为JavaScript对象;2、“JSON.stringify()”方法,用于将JavaScript值转换为JSON字符串。

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包。

基础结构

必须使用双引号"包含键值

1

2

// 键值对的集合,值的有序列表

var JsonObj = {"name":"Hannah", "like":["看书", "电影", "晨跑"]};

数组

1

2

3

4

5

6

7

8

9

10

var jsonArr = [

  {

    "name": "tom",

    "type": "cat"

  },

  {

    "name": "jack",

    "type": "mouse"

  }

]

对象

1

2

3

4

var jsonObj = {

  "like": ["看书", "电影", "晨跑"],

  "book": ["数字城堡", "刻意练习", "老人与海"]

}

javascript中的json方法

字符串转对象

1

var jsonObject= JSON.parse(jsonstr);

对象转字符串

1

var jsonstr =JSON.stringify(jsonObject);

优雅的输出格式

JSON.stringify() 方法的可选参数space,可以指定缩进用的空白字符串,用于美化输出(pretty-print)space参数是个数字,它代表有多少的空格;上限为10。该值若小于1,则意味着没有空格;如果该参数没有提供(或者为null)将没有空格。

1

2

3

4

// replacer 分隔符 space 缩进

JSON.stringify(value[, replacer [, space]])

 

var formatJsonStr=JSON.stringify(jsonObject,undefined, 2);

JSON字符串的替换

工作经常遇到这样的字符串,如下:

这里写图片描述

需要经过替换后,才能从字符串转化成JSON对象。这里我们需要用JS实现replaceAll的功能, 将所有的 ’ \" ’ 替换成 ’ " ’ .
代码如下,这里的gm是固定的,g表示global,m表示multiple:

1

var jsonStr=jsonStr.replace(new RegExp('\\"',"gm"), '"' );

替换后的效果如下:

这里写图片描述

遍历JSON对象和JSON数组

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

// 遍历JSON对象

var packJson  = {

  "name":"Liza",

  "password":"123"

};

for(var k in packJson ){  //遍历packJson 对象的每个key/value对,k为key

  alert(k + " " + packJson[k]);

}

 

// 遍历JSON数组

var packJson = [

  {

    "name":"Liza",

    "password":"123"

  },

  {

    "name":"Mike",

    "password":"456"

  }

];

for(var i in packJson){  //遍历packJson 数组时,i为索引

  alert(packJson[i].name + " " + packJson[i].password);

}

【相关推荐:javascript学习教程

以上就是javascript中的json方法有哪些的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

javascript中如何取值

jsp中能不能写javascript

json解析是什么?

augularjs基础入门与实践

javascript如何表示空指针

学习javascript之手机振动api

javascript如何定义一个方法

react高阶组件(装饰器)的介绍(代码示例)

javascript如何关闭浏览器事件

javascript需要搭建环境吗

更多相关阅读请进入《javascript》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...