概念:1.函数中返回一个函数 2.函数的声明作用域和函数的使用作用域不同

用途:1.获取私有作用域中的变量

function a(){
            let n = 0
            function add(){
                n++
                return n
            }
            return add
        }

        let getN = a()

        console.log(getN()); //返回结果是1

2.这些变量可以保存在内存中

function a(){
            let n = 0
            function add(){
                n++
                return n
            }
            return add
        }

        let getN = a()
        
        console.log(getN()); // 第一次保存 为1
        console.log(getN()); // 第一次保存 为2