函数表达式的定位
本文相关的概念:函数,函数表达式,返回值。
函数:函数名为Fun的函数。
函数表达式:Fun() 和 fun。
返回值:即函数Fun的返回值。
首先,需要明确的概念是:函数表达式的定位。
不同的定位决定了不同的功能,以下是我列出来的函数表达式及其定位。
我会在详细表述表达式时,附上便于理解的代码。
函数表达式 | 定位 |
---|---|
function() | 调用函数、返回返回值 |
function | 函数的副本 |
函数表达式 function()
当按钮被点击,函数表达式Fun() 作为参数首先被执行。
于是,第一步,函数Fun被调用,函数Fun执行 方法alert(111),弹出“111”;
第二步,函数fun 返回 返回值222。
接着,按钮的点击事件执行 alert方法,并接收到了返回值222,弹出“222”。
<body>
<input type="button" id="btn">
</body>
<script>
// 获取按钮对象
var btn = document.getElementById("btn");
// 方法
function Fun() {
alert(111);
return 222;
}
// 点击按钮 弹出函数表达式
btn.onclick = function () {
alert(fun());
}
</script>
函数表达式 function
我们在前面说到 函数表达式Fun 的定位是 函数Fun 的一个副本。
为了印证这个观点,其余代码不变,将函数表达式Fun() 换成 函数表达式Fun。
我得到的结果是,弹出: “ function Fun() { alert(1); return 222; } “
<body>
<input type="button" id="btn">
</body>
<script>
// 获取按钮对象
var btn = document.getElementById("btn");
// 方法
function Fun() {
alert(111);
return 222;
}
// 点击按钮 弹出函数表达式
btn.onclick = function () {
alert(fun;
}
</script>