拷贝传值:把一个变量的值拷贝一份,传给了另外一个变量
拷贝传值中,两个变量之间没有任何联系,修改其中一个一个变量的值,原来的变量不变。
例:
var arr1 = ["张三",24,"大专"]; //定义一个二维数组;
var arr2 = arr1;//将arr1的地址传给arr2,(不传递实际参数)
arr1[1] = 30;//改变arr1中的24等于30;
alert(arr2[1]);//输出arr2[1];
引用传址:
例:
var arr = ["张三","男",24]; //定义一个二位数组arr[];
function addElement(arr2){ //定义一个函数addElement(arr2)
arr2[arr2.length] = "北京科技大学"; //使用.length动态获取数组长度
}
addElement(arr); //将arr[]的参数地址传递过来,不传递实际参数。将arr2的参数按照地址添加到arr后边。
//输出数组变量arr的值
document.write(arr);//输出;
匿名函数:
//匿名函数:没有名字的函数;不能单独定义,不能单独使用
//匿名函数:一般作为数据为其他变量赋值
例:
var a = 10; //将数值赋给a,那么变量a就是数值型的变量
var a = "abc";
var a = true;
var a = [];
var a = function(name,age){ //将函数赋给a,那么变量a就是函数性的变量
window.alert(name+"的年龄是:"+age+"岁");
}
a("李菲菲",25); //执行函数;
var b = a;
b("李四",30);