变量值的类型:数值类型和引用类型

javascript高级程序设计70 71

加参数和不加参数


//变量:基本类型、引用类型,参数传递  高级程序设计69页
var color = "red";
function changeColor(color){   //参数color实际就是changeColor函数的局部变量。所有函数的参数都是按值传递
    console.log(arguments)   //[callee:function,Symbol()]
    if(color === "red"){
        color = "blue";
    }else{
        color = "blue";
    }
}
changeColor(color);   
console.log(color)   //red

var color = "red";
function changeColor(){
    console.log(arguments)  //[callee:function,Symbol()]
    if(color === "red"){
        color = "blue";
    }else{
        color = "blue";
    }
}
changeColor();   
console.log(color)   //blue

//全局变量和局部变量
var a = 10;
sayHi();
function sayHi()
{

var a = a + 10;
alert(a);
return a;   //return的a不会覆盖全局变量a,所以下面的alert(a) //10

}
alert(a);
alert(sayHi()+10);
执行结果:NaN 10 NaN NaN

var a = 10;
sayHi();
function sayHi()
{

var a = "a" + 10;
alert(a);
alert(typeof a);
return a;   //return的a不会覆盖全局变量a,所以下面的alert(a) //10

}
alert(a);
alert(sayHi()+10);
执行结果:a10 string 10 a10 string a1010

你可能感兴趣的:(变量值的类型:数值类型和引用类型)