JS对象和字符串之间互换操作实例分析


Posted in Javascript onFebruary 02, 2019

本文实例讲述了JS对象和字符串之间互换操作。分享给大家供大家参考,具体如下:

平时在工作中大家一定也有过这样的需求,就是有时候需要把一个json对象转换为字符串,有时候要把一个类似json对象的字符串转换为json对象,那么今天就来总结一下,js的方法

1. json对象转字符串

这个API很简单就是 JSON.stringify() ,只需要把你要转换的对象写到括号里就行了,下面有一个小demo

let json = {
  msg:"json转字符串",
  name:"前端林三哥",
  skill:"handsome"
}
let str = JSON.stringify(json);
console.log(str);

结果如下:

JS对象和字符串之间互换操作实例分析

很简单!

2. 字符串转json对象

有两种情况

① 规范的json转对象
② 不规范的json转对象

举个例子,怎么算规范的json呢,就是任何变量都用双引号

let json2 = '{"msg":"json转字符串","name":"前端林三哥","skill":"handsome"}'

这样,单引号里面全都是双引号,可以用 JSON.parse() 把要转的字符串放入括号里就ok了,小demo

let json2 = '{"msg":"json转字符串","name":"前端林三哥","skill":"handsome"}'
json2 = JSON.parse(json2);
console.log(json2);

结果如下

JS对象和字符串之间互换操作实例分析

再有一种不是很规范的json对象,因为我们有时候开发,js是弱类型的语言,也有不规范的时候,比如有些人就喜欢用单引号(有什么办法),比如下面的

let arr = "[{'name': '\u53d6\u6d88\u8ba2\u5355\u91cf', 'type': '1', 'value1': '<', 'value2': '100'}]";

如果我们用 JSON.parse() 的话,让我们来试试

结果如下:

JS对象和字符串之间互换操作实例分析

为什么会出现这个结果,因为我们的字符串里面并不是一个规范的json,因为规范的json,全都是用的双引号,而我们都是用的单引号,所以,我们只能用另一种办法 eval('('+ str +')')
让我们来试试

let arr = "[{'name': '\u53d6\u6d88\u8ba2\u5355\u91cf', 'type': '1', 'value1': '<', 'value2': '100'}]";
let obj = eval('('+arr+')');
console.log(obj);

结果如下:

JS对象和字符串之间互换操作实例分析

我们发现成功了,好了,今天就写到这里吧,我说了这么多,其实我在记笔记,哈哈!

更多关于JavaScript相关内容可查看本站专题:《javascript面向对象入门教程》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
一直复略了的一个问题,关于表单重复提交
Feb 15 Javascript
JQuery 弹出框定位实现方法
Dec 02 Javascript
用js来获取上传的文件名纯粹是为了美化而用
Oct 23 Javascript
javascript查询字符串参数的方法
Jan 28 Javascript
JavaScript SHA512&amp;SHA256加密算法详解
Aug 11 Javascript
jQuery progressbar通过Ajax请求实现后台进度实时功能
Oct 11 Javascript
jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
Dec 22 Javascript
深入对Vue.js $watch方法的理解
Mar 20 Javascript
vue 移动端适配方案详解
Nov 15 Javascript
微信小程序如何实现五星评价功能
Oct 15 Javascript
js实现数字从零慢慢增加到指定数字示例
Nov 07 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
Feb 24 Javascript
Vue+Element UI+Lumen实现通用表格分页功能
Feb 02 #Javascript
JS基于ES6新特性async await进行异步处理操作示例
Feb 02 #Javascript
JS使用canvas中的measureText方法测量字体宽度示例
Feb 02 #Javascript
JS使用对象的defineProperty进行变量监控操作示例
Feb 02 #Javascript
详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)
Feb 02 #Javascript
通过cordova将vue项目打包为webapp的方法
Feb 02 #Javascript
用Cordova打包Vue项目的方法步骤
Feb 02 #Javascript
You might like
基于php使用memcache存储session的详解
2013/06/25 PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
2017/08/02 PHP
PHP队列场景以及实现代码实例详解
2021/02/26 PHP
js内置对象 学习笔记
2011/08/01 Javascript
JavaScript 参数中的数组展开 [译]
2012/09/21 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
JavaScript导出Excel实例详解
2014/11/25 Javascript
jQuery实现输入框下拉列表树插件特效代码分享
2015/08/27 Javascript
基于JQuery实现图片轮播效果(焦点图)
2016/02/02 Javascript
使用ionic播放轮询广告的实现方法(必看)
2017/04/24 Javascript
详解angular ui-grid之过滤器设置
2017/06/07 Javascript
JS数组方法shift()、unshift()用法实例分析
2020/01/18 Javascript
javascript实现移动端上传图片功能
2020/08/18 Javascript
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
Python3使用requests包抓取并保存网页源码的方法
2016/03/15 Python
Python中函数参数设置及使用的学习笔记
2016/05/03 Python
Python之文字转图片方法
2018/05/10 Python
opencv python统计及绘制直方图的方法
2019/01/21 Python
使用Python将Mysql的查询数据导出到文件的方法
2019/02/25 Python
Python 删除List元素的三种方法remove、pop、del
2020/11/16 Python
python批量提取图片信息并保存的实现
2021/02/05 Python
pandas数据分组groupby()和统计函数agg()的使用
2021/03/04 Python
简单html5代码获取地理位置
2014/03/31 HTML / CSS
美国卡车、吉普车和SUV零件网站:4 Wheel Parts
2016/11/24 全球购物
美国电子产品主要品牌的授权在线零售商:DataVision
2019/03/23 全球购物
Arti-shopping中文官网:大型海外商品一站式直邮平台
2020/03/23 全球购物
高三自我鉴定
2013/10/23 职场文书
毕业生自我推荐
2013/11/04 职场文书
中学生团员自我评价分享
2013/12/07 职场文书
会计专业自我评价
2014/02/12 职场文书
四则混合运算教学反思
2016/02/23 职场文书
基于Nginx实现限制某IP短时间访问次数
2021/03/31 Servers
详解如何用Python实现感知器算法
2021/06/18 Python
Spring mvc是如何实现与数据库的前后端的连接操作的?
2021/06/30 Java/Android
i7 6700处理器相当于i5几代
2022/04/19 数码科技
Python Flask实现进度条
2022/05/11 Python