Javascript - 匿名函数

问题描述

var add= function(x,y) {
    document.write (x+y +"<br>")
}
add (4,5)
document.write (add(6,7))

输出

9  
13  
undefined  

为什么 undefined 会出现

解决方法

因为你的函数什么都不返回,所以默认情况下它返回 undefined

,

在这一行:

document.write (add(6,7))

.write 方法正在接收 add 方法的返回。 add 方法不返回任何内容,因此未定义(无)。 那么,就是写 undefined。

,

因为在 document.write() 中,您运行了之前调用它时已经运行的函数。 例如此代码日志未定义:

let a;
  document.write(a);