惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

I
InfoQ
博客园_首页
美团技术团队
M
MIT News - Artificial intelligence
人人都是产品经理
人人都是产品经理
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
J
Java Code Geeks
T
Tailwind CSS Blog
Jina AI
Jina AI
量子位
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
G
Google Developers Blog
爱范儿
爱范儿
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
宝玉的分享
宝玉的分享
小众软件
小众软件
MongoDB | Blog
MongoDB | Blog
博客园 - 三生石上(FineUI控件)
L
LangChain Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
V
Visual Studio Blog
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知

博客园 - tiny羊

自制一个可以为XNA所用的GIF 转 PNG 的小工具 展示PNG动画精灵 XNA 4.0中实现简单的快捷键模板 C#关键字 之 访问与上下文 C#关键字 之 转换 C#关键字 之 运算符 C#关键字 之 参数 - tiny羊 C#关键字 之 块 C#关键字 之 修饰符 Sql小题几道 泛型类及系统中常用的泛型类 泛型函数 Javascript简明教程6 定义时执行与单例模式 编程语言发展趋势图 Javascript简明教程系列 Javascript简明教程五 DOM Javascript简明教程三 函数 Javascript简明教程二 变量 Javascript简明教程一 使用Javascript
Javascript简明教程四 作用域
tiny羊 · 2008-09-15 · via 博客园 - tiny羊

上面讲了变量的和函数基本使用方式.

但是变量的使用还有一些问题,如果不明白这些问题是很容易出错的.

1.如果声明在全局作用域内,则该变量为全局变量

var x=1;
function f(){
return x++;
}
f();
alert(x);

其结果为2

2.无论在哪里,不使用var定义而直接使用的,使用后该变量为全局变量

function f1(){x=1;}
function f2(){x++;}
f1();
f2();
f2();
alert(x);

其结果为3.

3.在函数或其它{}所围成的作用域中,以var声明的变量,其作用范围仅为{}之间(if等判断循环语句除外)

function f(){
var x=1;
}
f();
alert(x);

是得不到x的值的

但是

function f(){
	if(1==1){
		var x=1;
		alert(x);
	}
	alert(x);
}
f();

这里的第二个alert(x); 却可以得到x的值

4.内外作用域变量重名时,以当前作用域的变量优先

var x=100;
function f(){
	var x=1;
	alert(x);
}
f();
alert(x);

这段代码运行的结果是1,100

即重名时在函数内部只调用函数内部的变量