十八、ES6新增语法(里面含ES5的JSON)(下)

模块(module)

通过Live Server插件来运行网页 (走http协议)
在这里插入图片描述
在这里插入图片描述
明确需求
在这里插入图片描述
在这里插入图片描述
■ 实战:封装工具(util.js)或网页头部(head.vue或head.jsx)或底部(版权信息)如果每个页面单独写后期维护麻烦,这时候我们就需要模块化 封装起来 然后直接导入使用。

■ 解决:通过es6的模块(module)

准备:必须走HTTP网址,vscode安装live server插件

语法说明

-说明:通过import 和export实现导入导出功能(必须走http协议访问

导出:

导出单个数据
export 修饰符 变量名 = 值
//...

批量导出数据
修饰符 变量名 = 值
// ..
export {变量名,...,变量名}

导入:

导入默认数据
export default 数据
使用语法:
script type="module" /script
import {变量名,...,变量名} from '路径及文件.js'
import 随便写个名字 from '路径及文件.js'

步骤分析

这里我们主要通过es6的模块化语法,来实现代码相互调用,从而减少冗余,提高代码复用率便于后期维护开发。实现过程非常简单,一共只需要2个步骤:

1.定义模块文件,导出成员
2.导入模块文件,使用成员

JSON方法 (ES5中的)

明确需求
明确需求:在实战工作中,我们需要获取对象里面的数据,但头疼的时候,由于各种原因对象变成了字符串,没办法通过.调用属性(导致原因:1-获取网页数据都是字符串,2-从文件获取也是字符串)
在这里插入图片描述
在这里插入图片描述
语法

字符串里面对象/数组 -> 真对象/数组     JSON.parse(数据)

真对象/数组  -> 字符串里面是对象/数组  JSON.stringify(数据)

练习

需求

var jsonObj = ‘{ “name”: “Jack”, “age”: 18, “gender”: “男” }’
var jsonArr = ‘[{ “name”: “Jack”, “age”: 18, “gender”: “男” }, { “name”: “Jack”, “age”: 18, “gender”: “男” }, { “name”: “Jack”, “age”: 18, “gender”: “男” }]’

var jsonObj = '{ "name": "Jack", "age": 18, "gender": "男" }'
// var jsonObj = "{ 'name': 'Jack', 'age': 18, 'gender': '男' }"

console.log(jsonObj.name)

let realObj = JSON.parse(jsonObj)
console.log(realObj.name)

在这里插入图片描述

var jsonArr = '[{ "name": "Jack", "age": 18, "gender": "男" }, { "name": "Jack", "age": 18, "gender": "男" }, { "name": "Jack", "age": 18, "gender": "男" }]'

console.log(jsonArr)

let realArr = JSON.parse(jsonArr)
console.log(realArr[0])
console.log(realArr[1])
console.log(realArr[2])

在这里插入图片描述

let obj = {a:1,b:2}
let strObj = JSON.stringify(obj)
console.log(strObj)
console.log(typeof strObj)

真对象/数组 -> 字符串里面是对象/数组 JSON.stringify(数据)

let obj = {a:1,b:2}
let strObj = JSON.stringify(obj)
console.log(strObj)
console.log(typeof strObj)

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值