<!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>
<script>
// 一个不会销毁的函数执行空间
// 刚才我们说过 一个函数在执行的时候
// 会开辟一个执行空间
// 所有的代码都在执行空间中执行
// 执行完销毁
// 在一个特殊的情况下 函数的执行空间不会销毁
// 什么特殊情况
// 当函数内部返回一个‘复杂数据类型’
// 并且在外部有变量接受这个‘复杂数据类型’的时候
// 这个函数的执行空间不能被销毁
// 基本数据类型赋值的时候 就是直接进行赋值
// 赋值以后两个变量就没有关系了
// 复杂数据类型赋值的时候 是进行存储地址的赋值
// 赋值以后两个变量操作的是同一个空间
// 一旦函数执行空间销毁 赋值的变量也没有存储地址了
// 所以这种情况下 js不会销毁函数的执行空间
//
function fn(num, num2) {
console.log('hello')
return [12]
}
// fn()
let res = fn(1, 2)
let res2 = fn(100, 200)
// console.log(fn(), 'fn()')
console.log(res, 'res')
console.log(res2, 'res2')
// 变量的赋值关系
let a = 100
let b = a
a = 0
console.log(a) //0
console.log(b) //100
</script>
</body>
</html>
07-18
223
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
07-18
396
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
06-13
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交