首页 > 编程语言 >JavaScript 之 JSON [4] parse()和stringify() -JSON字符串和JavaScript对象数据之间的相互转换

JavaScript 之 JSON [4] parse()和stringify() -JSON字符串和JavaScript对象数据之间的相互转换

时间:2023-04-14 15:01:14浏览次数:45  
标签:stringify name jsonObject JavaScript 2023.04 JSON

JavaScript 之 JSON [4] parse()和stringify() -JSON字符串和JavaScript对象数据之间的相互转换

1、JSON.parse()
JSON.parse()方法用于将一个JSON字符串解析为一个JavaScript对象。JSON字符串必须使用双引号包括属性名和字符串值,不能使用单引号或无引号。
语法:

JSON.parse(text, reviver)

参数:

  • text: 必须,要转换成JavaScript对象的JSON字符串。
  • reviver: 可选,是一个函数,用来在返回之前对所得到的对象执行变换。

示例:

const jsonString = '{"name": "滔Roy", "date": "2023.04.14", "other": [12, "TaoRoy", null, true]}';
const jsonObject = JSON.parse(jsonString);
console.log(jsonObject.name); // 输出:滔Roy
console.log(jsonObject.date); // 输出:2023.04.14
console.log(jsonObject.other); // 输出:[12, "TaoRoy", null, true]

2、JSON.stringify()
JSON.stringify()方法用于将JavaScript对象转换为JSON字符串。JSON.stringify()可以接收3个参数,其中前两个是必选参数,第三个是可选的。
语法:

JSON.stringify(value, replacer, space)

参数:

  • value: 必须,要转换成JSON字符串的JavaScript对象。
  • replacer: 可选,是一个函数或数组,用于控制序列化过程中对象的哪些属性被包含在JSON字符串中。
  • space: 可选,用于控制缩进,可以是一个数字或字符串。

示例:

const jsonObject = { //对象
"name":"滔Roy",
"date":"2023.04.14",
"other":[12,"TaoRoy",null,true] //数组
};

const jsonString = JSON.stringify(jsonObject);
console.log(jsonString);   // 输出:{"name":"滔Roy","date":“2023.04.14”,"other":[12,"TaoRoy",null,true]}

// 使用replacer参数过滤掉other属性
const jsonString2 = JSON.stringify(jsonObject, ["name", "date"]);
console.log(jsonString2);
// 输出:{"name":"滔Roy","date":“2023.04.14”}

// 使用replacer参数将值转换为大写
const jsonString3 = JSON.stringify(jsonObject, (key, value) => {
if (typeof value === "string") {
return value.toUpperCase();
}
return value;
});
console.log(jsonString3);  // 输出:{"name":"TAOROY","date":"2023.04.14","other":[12,"TAOROY",2023,true]}

// 使用space参数增加缩进
const jsonString4 = JSON.stringify(jsonObject, null, 2);
console.log(jsonString4);
// 输出:
//{
// "name": "TaoRoy",
// "date": "2023.04.14",
// "other": [
// 12,
// "TaoRoy",
// 2023,
// true
// ]
//}

注意:JSON.stringify()方法只能序列化可枚举的自有属性。如果要序列化一个对象的原型属性和方法,需要使用自定义的序列化函数。

 

 

创建时间:2023.04.14  更新时间:

标签:stringify,name,jsonObject,JavaScript,2023.04,JSON
From: https://www.cnblogs.com/guorongtao/p/17318302.html

相关文章

  • 原型及原型链-JavaScript教程
    JavaScript是世界上最流行的脚本语言。JavaScript是属于web的语言,它适用于PC、笔记本电脑、平板电脑和移动电话。JavaScript被设计为向HTML页面增加交互性。许多HTML开发者都不是程序员,但是JavaScript却拥有非常简单的语法。几乎每个人都有能力将小的JavaScript......
  • AppSettings.json 配置与获取
    1.第一步在我们的AppSettings.json文件中配置好需要的参数    2.创建一个AppSettingHelp类引用:usingMicrosoft.Extensions.Configuration;usingMicrosoft.Extensions.Configuration.Json;  3.然后我们就可以在Startup中进行调用  stringUrlName=AppSetti......
  • jquery ajax contentType为application/json及设置请求头header
    1.找了好久发现contentType一般为默认的application/x-www-form-urlencoded,这次post请求后台限定了为application/json2.当设置contentType为application/json还是出错时,把data也要转换一下$.ajax({method:"POST",url:"",contentType:'application/json',......
  • JavaScript 之 confirm,alert,prompt
    //confirmfunctiondisp_confirm(){varr=confirm("Pressabutton!")if(r==true){alert("YoupressedOK!")}else{alert("YoupressedCancel!")}}//alert<script>window.alert("确......
  • JavaScript 之 JSON [1]介绍、语法、值
    JavaScript之JSON[1]介绍、语法、值1、简介JSON指的是JavaScript对象表示法(JavaScriptObjectNotation)JSON是轻量级的文本数据交换格式JSON使用Javascript语法来描述数据对象,但JSON仍独立于语言和平台。JSON解析器和JSON库支持许多不同的编程语言。目前非常......
  • JavaScript 变量、标识符和四则运算
    JavaScript基础第二天变量什么是变量?变量由四个部分组成:1.var:声明变量的关键字2.变量名字1.变量的名字可以包含:字母,数字2.不能以数字开头3.不能使用关键字保留字比如var、if、for、列:web、_001、_number3.等于号=在js中它叫做赋值号4.值,赋值号后面的叫做值(变......
  • JSON Web Tokens (JWT) — the only explanation you will ever need
    本文摘抄自ArielWeinberger博客  JSONWebTokens(JWT)—theonlyexplanationyouwilleverneed|byArielWeinberger|Medium JSONWebTokens(JWT)—theonlyexplanationyouwilleverneedJSONWebTokensarechangingtheworldf......
  • JSON.stringify()的几个场景
    循环引用使用JSON.stringify()时,遇到循环引用的时候,会抛出错误TypeError:ConvertingcircularstructuretoJSON,如果需要强行转成字符串的话,需要利用到该方法的第二个参数。主要思路其实就是将循环引用的部分替换成某个标识,等到解析的时候去替换掉,就可以拿到原来的循环引用的......
  • json
    1、介绍JSON:JavaScriptObjectNotation(JavaScript对象表示法)JSON是存储和交换文本信息的语法,类似XML。JSON比XML更小、更快,更易解析。JSON易于人阅读和编写。2、数据类型(1)数字(整数或浮点数)(2)字符串(在双引号中)(3)逻辑值(true或false)(4)数组由[]包围,其内......
  • Javascript内置对象
    内置对象(常用方法)Math(不是构造函数,直接调用)/**@file封装自己的myMath对象@authorlxs/varmyMath={PI:3.1415926,/*@description求最小值@returns{Number}max@examplemax(3,5)//5/max:function(){varmax=arguments[0];for(vari=1;i<arg......