js 学习 函数

js 学习 第六章 函数

1.函数按照采用何种方式分为:1.通过function语句来定义,是静态的2. 通过构造function对象来调用,是动态的。

2.函数按照定义方式分为:1.命名方式  又称声明式,2匿名方式,又称引用式或者函数表达式

<script language="javascript" type="text/javascript">
function dws(s)
{
document.write(s + "</br>");
}
function t1(){
dws("t1");
}
t1();
function t1(){
dws("new t1");
}
t1();
t1 = function(){
dws("new new t1");
}
t1();
</script>

输出结果是:

new t1
new t1
new new t1

为啥不是:终于明白为什么不是下边的结果了,看了他的解释http://blog.csdn.net/lq305/article/details/6608954

 t1
new t1
new new t1

因为声明式函数是先于函数执行代码被解析器解析。所以两个声明式函数先被解析,第二个覆盖了第一个函数,才是才执行代码 连个t1() 都执行第二个函数。

而匿名函数成为引用式函数是在执行中执行的,所以会覆盖前连个t1()函数,终于明白了。

原文地址:https://www.cnblogs.com/recordlife/p/2985017.html