对象是一种复合值,将很多值(原始类型或另一个对象)集合在一起,可以方便地组织和管理这些值。
JavaScript入门之对象与JSON详解
1. 什么是对象
对象是一种复合值,将很多值(原始类型或另一个对象)集合在一起,可以方便地组织和管理这些值。
2. 对象的创建
2.1 对象字面量创建对象
对象字面量是表示对象的最简洁方式之一,由一堆用逗号隔开的 名/值 对 组成,逗号后面的属性值可以是任意合法的JavaScript表达式。
示例1:
let student = {
name: 'Tom',
age: 18,
score: {
math: 90,
english: 80
},
hobbies: ['basketball', 'reading'],
study: function () {
console.log('study hard');
}
}
2.2 使用Object构造函数创建对象
使用Object构造函数创建对象的方式也比较简单,只需使用new关键字创建一个Object的实例即可。
示例2:
let student = new Object();
student.name = 'Tom';
student.age = 18;
student.score = {
math: 90,
english: 80
};
student.hobbies = ['basketball', 'reading'];
student.study = function () {
console.log('study hard');
}
3. JSON简介
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript的一个子集,轻量且易于阅读和编写。JSON采用 简洁和层次结构 的方式来表示数据,方便数据的交互和传输。
4. JSON格式
JSON格式由两种数据结构组成:
4.1 对象
对象由一组 名/值 对组成,用花括号 {} 包围,并用逗号 , 分隔。键名必须放在双引号 " " 中,值可以是任意类型的值。
示例3:
{
"name": "Tom",
"age": 18,
"score": {
"math": 90,
"english": 80
},
"hobbies": ["basketball", "reading"]
}
4.2 数组
数组由一组值组成,用方括号 [] 包围,并用逗号 , 分隔。值可以是任意类型的值。
示例4:
[
{
"name": "Tom",
"score": {
"math": 90,
"english": 80
}
},
{
"name": "Jerry",
"score": {
"math": 95,
"english": 85
}
}
]
5. JSON的序列化与反序列化
5.1 对象的序列化
使用JSON.stringify()方法可以将对象序列化为JSON字符串,它接受三个参数:要序列化的对象、可选的一个函数用于转换对象中的值,可选的字符串用于添加前缀空格的格式化输出。
示例5:
let student = {name: "Tom", age: 18};
let jsonString = JSON.stringify(student);
console.log(jsonString); //输出{"name":"Tom","age":18}
5.2 JSON字符串的反序列化
使用JSON.parse()方法可以将JSON字符串反序列化为JavaScript对象。
示例6:
let jsonString = '{"name":"Tom","age":18}';
let student = JSON.parse(jsonString);
console.log(student); //输出{name: "Tom", age: 18}
以上即是JavaScript入门之对象与JSON详解的完整攻略,希望对您有所帮助。
本文标题为:JavaScript入门之对象与JSON详解
基础教程推荐
- 一文详解Mybatis-plus的介绍与使用 2023-03-11
- shenyu怎么处理sign鉴权前置到网关 2023-04-16
- java中如何截取字符串最后一位 2023-02-19
- Java实现文件检索系统的示例代码 2023-02-19
- JSP页面中超链接传递中文参数出现乱码问题解决方法 2023-08-03
- @Schedule 如何解决定时任务推迟执行 2023-06-06
- IDEA中sout快捷键无效问题的解决方法 2023-03-15
- JAVA/JSP学习系列之五 2024-01-13
- Java利用EasyExcel实现合并单元格 2022-12-16
- Spring5新功能日志框架Log4j2整合示例 2022-11-25