// 在函数中 可以通过 return 关键词来定义函数的返回值也就是函数的执行结果
        // 如果没有 return 定义,函数的返回值,函数的执行结果是 undefined 
        // 我们之前定义的 累加求和函数
        function myAdd1(max , min=1){
            if(min > max){
                var int = min;
                min = max;
                max = int;
            }
            var res = 0;
            for(var i = min ; i <= max ; i++){
                res += i;
            }
            // 当前函数,是通过console.log()向控制台输出执行结果
            // 没有通过return关键词,定义执行结果,返回值
            // 因此当前函数的执行结果是 undefined
            console.log(res);
        }
        // console.log() 是一个函数,是JavaScript程序本身定义个一个函数
        // 这个函数的作用是 将 () 中的参数,向浏览器控制台输出
        // 例如 console.log( 100 ) 是向 控制台输出 参数 100 数值
        // 这个函数只是向控制台输出结果,自己本身,并没有定义返回值
        // 没有定义返回值的函数,返回值一律是 undefined
        // console.log( console.log( 100 ) )
        // 是向控制台输出 console.log( 100 )  这个函数的 返回值
        // 再次强调 console.log( 100 ) 作用是向控制输出 参数 但是没有返回值
        // 返回值 是 undefined 
        // 那么我们想 控制台 输出  console.log( 100 ) 的返回值 
        // 结果就是 undefined 
        // 总结: 控制台输出,页面输出等,都不算是 函数的执行结果,不算是返回值
        //       必须是 通过 return 定义的数据数值,才是函数的执行结果,才是返回值
        //       这是我们 JavaScript 语法中严格规定的,我们必须遵守
        console.log( console.log( 100 ) ) ;
        function myAdd2(max,min=1){
            if(min > max){
                var int = min;
                min = max;
                max = int;
            }
            var res = 0;
            for(var i = min ; i <= max ; i++){
                res += i;
            }
            // 通过 return 来定义 函数的执行结果,返回值
            return res;
        }
        // 观察两个函数的执行区别
        // myAdd1() 因为是 console.log(res) 执行结果会直接在控制台输出
        // 但是这个结果 只能在 控制台中看  不能赋值给 变量存储 
        myAdd1(1,100);
        // 有一个变量想存储 执行结果 5050 , 是不能成功的
        // 执行结果 就直接 在 控制台输出了 变量是无法存储5050这个数值的
        // 变量中存储的是函数的执行结果,是返回值
        // 当前 myAdd1() 没有 return 定义 返回值 是 undefined
        // a 当中 存储的是 undefined
        var a = myAdd1(1,100);
        console.log(a);
        // myAdd2() 因为是 return res 执行结果 不会 直接在控制台输出
        // 但是 可以 作为 执行结果 返回值  赋值给其他变量存储
        // 当然,也可以通过 console.log() 来输出函数的执行结果返回值
        // 这样操作函数的执行结果返回值就比较灵活方便了
        var b = myAdd2(1,10);
        console.log(b);
        console.log( myAdd2(1,100) )
        // 举例:类比一下
        // 例如我们 到 蛋糕店 有做出来可以卖的蛋糕 , 还有 放在橱柜里 展示的蛋糕
        // 橱柜里展示 的 蛋糕 就是 相当于 console.log()  document.write() 输出的
        // 只能看,不能吃,你也不能买,就是一个假的蛋糕
        // console.log()  document.write() 输出的 结果
        // 你只能看,不能做任何其他的操作,只能看不能用
        // 蛋糕店里,用来出售的蛋糕,你可以买,可以吃,可以拍脸上,爱干什么干什么
        // 相当于 我们 return 的 执行结果返回值
        // 可以赋值给变量,可以 console.log(),想怎么操作怎么操作
 
  // 函数中 return 的作用
        // 1, return 可以定义函数的返回值
        // 2, return 可以终止函数中一切内容的执行
        // 因此要特别注意定义 return 的位置
        // 如果定义位置错误,函数被错误的提前终止,就不会有正确的返回值了
        // 因为 return 可以终止函数的执行,因此一个函数中,只能有一个 return
        // 如果定义 两个 return ,第二个会被第一个给终止掉,没有作用
        // 但是 if() switch 分支结构语句,可以定义情况下,不同的 return 值