JavaScript 中的函数实际上是数据。这也就是说下面的2 种定义函数的方式是完全一样的。
- function f(){return 1;}
- var f = function(){retrun 1;}
第二种定义函数的方式也被称为“文本标记型”函数
两种定义函数的区别:
第二种定义函数的缺点,有位置的限制,而第一种没有,我们看一下下面的例子
<script type="text/javascript">
//这也就是说下面的2 种定义函数的方式是完全一样的。
function fun01() { }
var fun02 = function () { }
//结果是function,说明fun02就是一个函数
document.write(typeof fun02 + '<br/>');
//并且它可以当作一个变量来使用
var temp = fun02;
document.write(typeof temp + '<br/>');
//第二种定义函数的缺点,有位置的限制
document.write(obj01() + '<br/>');
//obj02不能在这个位置调用
//document.write(obj02() + '<br/>');
function obj01() { return 2; }
var obj02 = function () { return 3; }
//只能在函数定义的后面调用
document.write(obj02() + '<br/>');
</script>