JavaScript实现字符串转JSON对象的4种方法代码

 更新时间:2023年10月09日 15:54:35   作者:不掉头发!  
这篇文章主要给大家介绍了关于JavaScript实现字符串转JSON对象的4种方法,使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON),需要的朋友可以参考下

在很多时候我们都需要将数据转换为JSON的格式去进行请求,这里就给大家介绍几种转JSON的方法

1. javascript函数eval()

语法:

var obj = eval ("(" + txt + ")");  //必须把文本包围在括号中,这样才能避免语法错误 

eval()定义:eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

由于 JSON 语法是 JavaScript 语法的子集,JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象。

注意:当字符串中包含表达式时,eval() 函数也会编译并执行,转换会存在安全问题。

2. 浏览器自带对象JSON,JSON.parse()

语法:

var obj = JSON.parse(text[, reviver])
//text:必需, 一个有效的 JSON 字符串。解析前要确保你的数据是标准的 JSON 格式,否则会解析出错。
//reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。

JSON.parse()比eval()安全,而且速度更快

支持主流浏览器:Firefox 3.5,IE 8,Chrome,Opera 10,Safari 4。

注意:IE8兼容模式,IE 7,IE 6,会存在兼容性问题。

3. jQuery插件,$.parseJSON()

语法:

var obj = $.parseJSON(json)  //json:String类型,传入格式有误的JSON字符串可能导致抛出异常

4. ajax请求获取json数据时,$.getJSON()

语法:

jQuery.getJSON(url,data,success(data,status,xhr))
//url    必需。规定将请求发送的哪个 URL。
//data    可选。规定连同请求发送到服务器的数据。
//success(data,status,xhr)    可选。规定当请求成功时运行的函数。

这个时候返回的data已经是JSON对象,不需要再进行转换。

$.getJSON() 是简写的 Ajax 函数,等价于:

$.ajax({
  url: url,
  data: data,
  success: callback,
  dataType: "json"
});

总结 

到此这篇关于JavaScript实现字符串转JSON对象的4种方法的文章就介绍到这了,更多相关JS字符串转JSON对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 微信小程序web-view无法打开该页面不支持打开的解决方法

    微信小程序web-view无法打开该页面不支持打开的解决方法

    小程序现在日渐成熟,功能也越来越强大,我们今天来一起看看小程序跳转的问题,下面这篇文章主要给大家介绍了关于微信小程序web-view无法打开该页面不支持打开的解决方法,需要的朋友可以参考下
    2023-01-01
  • 高效的获取当前元素是父元素的第几个子元素

    高效的获取当前元素是父元素的第几个子元素

    例如处理事件的时候,有时候需要知道当前点击的是第几个子节点,而HTML DOM本身并没有直接提供相应的属性,需要自己来计算。感兴趣的朋友可以了解下本文
    2013-10-10
  • Electron 使⽤ electron-builder 打包应用过程详解

    Electron 使⽤ electron-builder 打包应用过程详解

    Electron应用开发中,electron-builder是一个常用的打包工具,提供了多种自定义配置,不过,使用npm安装electron-builder时可能会遇到下载依赖慢或失败的问题,本文给大家介绍Electron 使⽤ electron-builder 打包应用的相关操作,感兴趣的朋友一起看看吧
    2024-10-10
  • js实现按钮加背景图片常用方法

    js实现按钮加背景图片常用方法

    这篇文章主要介绍了js实现按钮加背景图片常用方法,罗列了js事件触发控制背景图片、css样式控制以及图片按钮三种方法,非常具有实用价值,需要的朋友可以参考下
    2014-11-11
  • js 实现无缝滚动 兼容IE和FF

    js 实现无缝滚动 兼容IE和FF

    js 实现无缝滚动 兼容IE FF,大家可以看看。
    2009-07-07
  • javascript 数组排序函数

    javascript 数组排序函数

    javascript的数组排序函数 sort方法,默认是按照ASCII 字符顺序进行升序排列。
    2009-08-08
  • JavaScript获取URL汇总

    JavaScript获取URL汇总

    在WEB开发中,许多开发者都比较喜欢使用javascript来获取当前url网址,本文就此为大家总结一下比较常用获取URL的javascript实现代码
    2015-06-06
  • JS ES6异步解决方案

    JS ES6异步解决方案

    这篇文章主要介绍了JS ES6异步解决方案,对异步感兴趣的同学,可以参考下
    2021-04-04
  • 如何丰富alt属性的显示效果

    如何丰富alt属性的显示效果

    如何丰富alt属性的显示效果...
    2007-01-01
  • ES2020系列之空值合并运算符 ''??''

    ES2020系列之空值合并运算符 ''??''

    这篇文章主要介绍了ES2020系列之空值合并运算符 '??',文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07

最新评论