JSON字符串是现在开发中常用的数据格式,但它只是字符串,如果需要对其中的数据进行操作,就需要将JSON字符串转换为数组或对象。那么问题来了,JSON字符串能转数组吗?答案是肯定的。下面我们来介绍一下如何将JSON字符串转换成数组。
// 示例JSON字符串 const jsonStr = '{"name": "小明","age": 18,"hobby": ["reading","music","sports"]}'; // 方法一:使用JSON.parse方法 const jsonObj = JSON.parse(jsonStr); console.log(jsonObj); // 输出结果为:Object {name: "小明",age: 18,hobby: Array(3)} // 将JSON转换后的对象中的hobby属性值赋给数组 const arr = jsonObj.hobby; console.log(arr); // 输出结果为:["reading","sports"]
方法一是最常用的方法,它利用了JSON对象内置的parse方法将JSON字符串转换成对象。通过将JSON转换后的对象中的属性值赋给数组,就能将JSON字符串转换成数组了。下面再介绍一下方法二。
// 方法二:使用eval方法 const arr = eval('(' + jsonStr + ')').hobby; console.log(arr); // 输出结果为:["reading","sports"]
方法二是利用了JavaScript的eval方法,也能将JSON字符串转换成对象,但这种方法不够安全,因为它会执行JSON字符串里的任意代码,有可能导致安全漏洞。因此,我们不推荐使用eval方法。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。