JavaScript函数解析1

创建函数的方 法主要有三种:声明式的静态方式(传值和传引用)、动态的匿名方式、函数表达式。

(1)声明式的函数

为常见的方式,用关键字function来声明创建

function functionname(参数1,参数2 泄漏zhi,...,参数n){函数体}

声明式的函数只在页面加载时解析一次,这种方式容易在代码中定位,方便查找阅读和理解,一一般没有内存泄漏之类的负面影响。

function helloWorld(toYou)
{
alert("hello"+toYou);
}
helloWorld("World");

无论调用他多少次,使用的都是上面这个函数对象。

这里特别强调传参数时,传值和传引用的区别,JS中基本数据类型的变量,比如字符串,布尔类型和数值,会以传值的方式传给函数,当函数中改变实参是的数值时,这种改变不会反映到调用函数的程序中。

传引用时,函数中对参数的改变会反映到调用的函数程序中。
<script>
function alterArgs(a,b)
{
a="hello";
b[b.length]="three";

var str="Baby";
var ary=new Array("one","two");

alterArgs(str,ary);

document.write("string is"+str+"<br/>");
document.write("Array is"+ary);
}

</script>

输出结果为:Baby
                one two three

 声明一个数组实际上是分配了一个地址,然后传到函数里的就是一个地址,然后改变值的时候指向的是同一个地址,,传值的话他们指向的就是不同的地址了吧,所以传值来改变实参的值,调用函数后不会有改变.



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值