<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
<script>
function fn(){
var name=' 浅夏';
function f2(){
return name;
}
return f2
}
var fnc=fn();
console.log( fnc())
// 如果内部函数想读取外部函数的变量或者形参,就必须使用到闭包
var obj={
name:"稚元",
say: function(){
console.log(this.name)
}
}
obj.say()
var str=JSON.stringify(obj)
console.log(str)
// 1.对象中的this指向
// 2.对象转字符串,一般用于发送到后端数据
console.log(JSON.parse(str))
// 从后端返回的数据 不一定是对象形式 更多是字符串形式。为了正常使用可以通过JSON.parse()转换成对象形式
// 后端返回的数据可能是嵌套,可以使用es6的结构赋值的方式提取或map
// 嵌套方式如下:1.对象 2.数组 3.数组嵌套对象 4.对象嵌套对象
var obj1={
name:"浅小夏",
age:18
}
var {name,age}=obj1
console.log(name)
console.log(age)
var arr2=[1,9,4,7,6]
var [a,b,c]=arr2
console.log(a,b,c)
var arr=[
{name:"小红",age:18}, {name:"小雷",age:17}, {name:"小雪",age:17}
]
var [c,f,s]=arr;
console.log(c)
console.log(f)
console.log(s)
var obj4={
per:{
name:"小飞",
age:50
}
}
var {per:{name}}=obj4;
console.log(name)
</script>
</html>
09-17