JS对象和字符串的相互转换

简介: JS对象和字符串的相互转换

在 JavaScript 中,可以使用 JSON.stringify() 方法将对象转换为字符串,以及使用 JSON.parse() 方法将字符串转换为对象。

1. 对象转字符串:

使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串。例如:

const obj = { name: 'Tom', age: 18 };
const jsonString = JSON.stringify(obj);
console.log(jsonString); // 输出 '{"name":"Tom","age":18}'

2.字符串转对象

使用 JSON.parse() 方法将 JSON 字符串转换为 JavaScript 对象。例如:

const jsonString = '{"name":"Tom","age":18}';
const obj = JSON.parse(jsonString);
console.log(obj.name); // 输出 'Tom'
console.log(obj.age); // 输出 18

3.注意点

JSON.stringify() 和 JSON.parse() 方法只能处理符合 JSON 格式的数据。也就是说,对象中的属性名必须使用双引号括起来,而不能使用单引号或者没有引号。另外,对象中不能包含函数、正则表达式等特殊类型的属性。

如果对象中包含了函数或者其他无法直接序列化为 JSON 的属性,可以通过自定义的方式进行转换。例如,可以在对象上定义一个 toJSON() 方法,该方法在调用 JSON.stringify() 时会被自动调用,并返回一个可被序列化为 JSON 的简化版本的对象。例如:

const obj = {
  name: 'Tom',
  age: 18,
  toJSON() {
    return {
      name: this.name,
      age: this.age
    };
  }
};

const jsonString = JSON.stringify(obj);
console.log(jsonString); // 输出 '{"name":"Tom","age":18}'
目录
相关文章
|
2月前
|
JavaScript 前端开发
JS几种拼接字符串的方法
JS几种拼接字符串的方法
52 1
|
4月前
|
存储 JavaScript 前端开发
JS上传文件(base64字符串和二进制文件流)
这篇文章介绍了两种JavaScript文件上传的方法:使用FileReader对象将文件读取为base64字符串上传,以及使用FormData对象以二进制文件流的形式上传文件,包括如何处理文件选择、读取和上传的详细代码示例。
489 2
JS上传文件(base64字符串和二进制文件流)
|
3月前
|
JavaScript
js 解析 byte数组 成字符串
js 解析 byte数组 成字符串
84 5
|
4月前
|
JSON JavaScript 前端开发
JavaScript实现字符串转json对象的方法
JavaScript实现字符串转json对象的方法
|
2月前
|
存储 JavaScript 前端开发
JavaScript 字符串(String) 对象
JavaScript 字符串(String) 对象
45 3
|
3月前
|
JavaScript 前端开发
javascript创建字符串
javascript创建字符串
|
3月前
|
JavaScript 前端开发
如何在JavaScript中替换字符串:一篇详细指南
如何在JavaScript中替换字符串:一篇详细指南
|
3月前
|
存储 JavaScript
js切割截取字符串方法
js切割截取字符串方法
51 2
|
3月前
|
Web App开发 JavaScript 前端开发
JavaScript 模板字符串
JavaScript 模板字符串
35 3
|
3月前
|
存储 JavaScript 前端开发
JavaScript 字符串
JavaScript 字符串
22 2