在函数里声明变量对var关键字认识不深刻,这里就函数里声明变量的一些示例。
一、函数内使用var关键字声明变量
这种情况通常是声明的函数作为局部变量,即函数外不能使用
function aa(){
// 声明变量,使用var关键字
var str = '博客';
alert(str); // out : 博客
}
aa();
// 函数外使用变量
alert(str); // 报错:没有声明str变量
二、函数内不使用var关键字声明变量
这种情况下,即是声明全局变量,整个脚本任何地方都可以使用
function aa(){
// 声明变量,不使用var关键字
str = '博客';
alert(str); // out : 博客
}
aa();
// 函数外使用变量
alert(str); // out : 博客
三、一个常见的错误
// 声明全局变量
var str = '博客';
function aa(str){
// 函数内定义一个与全局变量同名变量
var str = str;
alert(str); // out : undefined
}
aa();
// 再次使用变量,值未变
alert(str); // out : 博客