定义一个函数,这个函数的返回也是一个函数(内部函数)
内部函数用到了外部函数里面的变量,或者说,内部函数用到了外部函数里面的参数
定义内部函数要做什么(要返回什么)
把内部函数拿到外面来使用,用一个变量接收内部函数本身。
变量接收了内部函数本身,变量后面加个括号,意思就是执行内部函数。
<script>
// 定义了一个全局变量,外部函数内部函数都可以用
var temp = 37.2;
// 定义一个外部函数
function makeFun(checkLine) {
// 外部函数的返回值是一个内部函数
return function (temp) {
// 内部函数用了外部函数的参数
if (temp > checkLine) {
alert("高于检测线");
} else {
alert("正常");
}
};
}
// 把内部函数拿到外面来执行,用一个变量接收它
// 这个函数接收的,是 内部函数的函数体
var checkA = makeFun(37.1);
var checkB = makeFun(37.3);
// 现在执行内部函数,变量接收的是函数体,那么变量加上小括号,就是执行这个函数
checkA(temp);
checkB(temp);
</script>