js局部变量,参数
2020-12-07 08:31
标签:com http style blog class div img code c java log 作者:zccst 所有函数的参数都是按值传递的。也就是说,把函数外部的值复制给函数内部的参数,就和把值从一个变量复制到另一个变量一样。 不少人困惑,因为变量有按值和按引用两种方式,而参数只能按值传递。 js局部变量,参数,搜素材,soscw.com js局部变量,参数 标签:com http style blog class div img code c java log 原文地址:http://www.cnblogs.com/zccst/p/3702044.html
基本类型值的传递如同基本类型变量的赋值一样。
而引用类型值的传递,则如同引用类型变量的赋值一样。
在向参数传递基本类型和引用类型时都会复制一份。//传递了形参
var a = [1, 2, 3];
var b = [5, 6];
function change(a,b) {
var c = a;
a[0] = 4;
a = b;
b = c;
};
change(a,b);
console.log(a,b); //"4,2,3" //"5,6"
//没有传递形参
var a = [1, 2, 3];
var b = [5, 6];
function change() {
var c = a;
a[0] = 4;
a = b;
b = c;
};
change();
console.log(a,b); //"5,6" //"4,2,3"
function test(i){
var i;
alert(i);//10,上面 var i; 属于重复定义
}
test(10);
var a = 100;
function test() {
console.log(a);//undefined
var a = 10;
console.log(this.a);//100
console.log(a);//10
}
test();