JSON.parse() 和 JSON.stringify()

xiaoxiao2021-02-28  141

语法详解

作用:这个函数的作用主要是为了系列化对象的。

可能有些人对系列化这个词过敏,其实很简单。就是说把原来是对象的类型转换成字符串类型(或者更确切的说是json类型的)。

JSON.parse()

JSON.parse() 方法解析一个JSON字符串,构造由字符串描述的JavaScript值或对象。可以提供可选的reviver函数以在返回之前对所得到的对象执行变换。

语法

JSON.parse(text[, reviver])

参数

text

要被解析成JavaScript值的字符串,查看 JSON 对象学习的JSON 语法的说明。

reviver 可选

如果是一个函数,则规定了原始值如何被解析改造,在被返回之前。

返回值

Object对应给定的JSON文本。

异常

若被解析的 JSON 字符串是非法的,则会抛出 一个语法错误 异常。

示例

JSON.parse('{}'); // {} JSON.parse('true'); // true JSON.parse('"foo"'); // "foo" JSON.parse('[1, 5, "false"]'); // [1, 5, "false"] JSON.parse('null'); // null

JSON.stringify()

JSON.stringify() 方法将一个 JavaScript 值转换为一个 JSON 字符串,如果指定了一个 replacer 函数,则可以替换值,或者如果指定了一个 replacer 数组,可选地仅包括指定的属性。

语法

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

参数

value

将要序列化成 一个JSON 字符串的值。

replacer可选

如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中;如果该参数为null或者未提供,则对象所有的属性都会被序列化。

space 可选

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

返回值

一个表示给定值的JSON字符串。

示例

JSON.stringify({}); // '{}' JSON.stringify(true); // 'true' JSON.stringify("foo"); // '"foo"' JSON.stringify([1, "false", false]); // '[1,"false",false]' JSON.stringify({ x: 5 }); // '{"x":5}'
转载请注明原文地址: https://www.6miu.com/read-17735.html

最新回复(0)