首先看一段代码:
<script type="text/javascript">
function myFunc(){
alert("hello");
}
myFunc();
function myFunc(){
alert("yeah");
}
myFunc();
</script>
结果是都是输出“yeah”
关于函数声明,他的一个重要的特征就是函数声明提升,意思是在执行代码之前会先读取函数声明,在看另一个例子:
<script type="text/javascript">
var myFunc = function(){
alert("hello");
}
myFunc();
myFunc = function(){
alert("yeah");
}
myFunc();
</script>
结果是第一个输出hello,第二个输出yeah。因为上面的例子不是通过函数声明来定义函数,而是通过函数表达式实现的。