定义变量
- 貌似很简单,大家看一下:
var str=“你好”; // 单引号也可以 哦~~~ 如 var str=‘你好’;
var age=20; //这里看来,加上双引号 或单引号 就是一个字符串。不加就是数字(整数或浮点数)
而 var 在js中代表“定义一个变量”
直接调用:
var a=“str”;
alert(a);
到这一步实在太简单了
在函数内调用:
var str="你好";
function show()
{
alert(str);
}
show();
在函数内调用:
var str="你好";
function show()
{
alert(str);
}
show();
var str="你好";
function show()
{
str="修改后的你好"
alert(str);
}
show();
alert(str);
到这里为止,最初的str 在 show这个函数里 被”改变了“
var str="你好";
function show()
{
var str=“修改后的你好“; //注意,在函数内部定义的变量,哪怕和外部重名,这两者都没有任何关系
alert(str);
}
show();
alert(str)
function show()
{
var str=“修改后的你好” //这里,外部不定义,只在内部定义
alert(str);
}
show();
alert(str) ;// 执行到这里就报错了
在函数体里 用 var 定义的变量,在外部是不能访问的
function show()
{
str=“修改后的你好” // 这里可没有var 这个关键字哦~~~
alert(str);
}
show();
alert(str)
函数间的互相调用
function show1()
{
str=“你好”;
}
function show2()
{
alert(str)
}
show1();
show2();
我们的皇帝又出现了
我们前面讲过,假设定义一个函数譬如叫 abc
那么还可以用 window“abc”; 的方法来调用函数
那么也变量一定可以这么干,变量肯定在window对象里也会被注册
var str="你好";
function show1()
{
str="你好";
}
alert(window[“str”]); //说明 str 被window注册为全局变量
function show1()
{
str="你好";
}
show1();
alert(window[“str”]); //说明 str 通过执行show1函数被window注册为全局变量
function show1()
{
var str="你好";
}
alert(window[“str”]); //这说明 str只是局部变量,而且局部变量在window对象里是不会被注册的
总结
- 在JS中定义变量,可以直接写变量名,或者加个var关键字
- 在函数体内用var 定义的变量 是局部变量
- 不写var 定义的变量只要被正确调用 它就是一个全局变量
- window[“变量名”] 也可以访问该变量
- 只有全局变量在window对象中是被注册的。