`

1.3 javaScript变量的作用范围

阅读更多

        根据作用范围不同,变量有全局变量和局部变量两种
<script>
	//定义全局变量test
	var test = "全局变量"; 
	function checkscope(  )
	{
		var test = "局部变量";
		alert(test);
	}
	checkscope(  ); 
//在函数里定义的变量为局部变量,局部变量只在函数内有效。
//如果局部变量和全局变量用相同的变量名,则局部变量将覆盖全局变量
</script>


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JavaScript语言没有块范围:

<script>
	function test(o)	
	{
		//定义变量i,变量i的作用范围是整个函数
			var i = 0;
		if (typeof o == "object") 
		{
			//定义变量j,变量j的作用范围是整个函数内,而不是if块内。
				var j = 5;
				for(var k = 0; k < 10; k++)
				{
				//k的作用范围是整个函数内,而不是循环体内
					document.write(k);
				}
		}	
		//即使出了循环体,k的值依然存在
		alert(k + "\n" + j); 
	}
	test(document);
</script>


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;因为JavaScript语言没有块范围,有时会出现一些非常奇怪的结果:

<script>

	var scope = "全局变量";
	function test()
	{
		alert(scope); 
		var scope = "局部变量";
		alert(scope); 
	}
	test();
//代码第一次输出的scope值并不是"全局变量",而是undefined。知识这是因为scope在test函数中已经被重新定义了,局部变量在test函数中将全局有效,即在scope还没定义之前全局变量scope依然被覆盖。
</script>


变量作用范围在进行HTML事件处理时一样有效:
<script type="text/javascript">
  var x = "全局变量";
</script>

<form action="#" method="get">
<input type="button" value="局部变量" 
  onclick="var x = '局部变量'; alert('输出x局部变量的值:' + x);" />
<input type="button" value="全局变量 " 
  onclick="alert('输出x全局变量的值: ' + x);" />
</form>





分享到:
评论

相关推荐

    JavaScript程序设计-变量作用域.pdf

    JavaScript是一种广泛用于网页和网络应用的编程语言,其核心特性之一就是变量作用域。变量作用域决定了变量在何处可以被访问以及何时会被销毁。本文将深入探讨JavaScript中的全局变量、局部变量、变量提升、词法作用...

    JavaScript:变量与数据类型

    ### JavaScript中的变量与数据类型...通过以上内容,我们可以了解到JavaScript中变量的基本概念、声明与赋值的方法,以及变量的作用域和生命周期的管理。掌握这些基础知识对于编写高效、可靠的JavaScript程序至关重要。

    javascript教案 JavaScript基础

    1.3 JavaScript的特点 4 1.3.1 javascript的优点 5 1.3.2 javascript的局限性 5 1.4 Java 与 JavaScript 有什么不同 5 第二章 语法基础 7 2.1 在什么地方插入 JavaScript 7 2.2 语句 9 2.3 注释 9 ...

    至强JavaScript教程V1.3

    至强JavaScript教程V1.3是针对这一编程语言的一个详尽教程,由作者Tomy在2012年3月29日进行了更新,旨在帮助学习者掌握JavaScript的核心概念和实际应用。 JavaScript是一种轻量级、解释型的编程语言,主要应用于...

    NTVS 1.3 - nodejstools-1.3

    它支持断点设置、单步执行、查看变量值、调用堆栈分析等调试功能,使得在Visual Studio中调试Node.js应用变得直观且高效。同时,它还能与其他语言如JavaScript库或C++扩展进行混合调试,这对于处理复杂跨语言项目...

    Bootstrap Minimal v1.3

    5. **LESS和SASS支持**:Bootstrap原生支持LESS预处理器,Bootstrap Minimal v1.3可能也支持SASS,这两种预处理器使开发者能更方便地组织和管理CSS代码,提供变量、嵌套规则和混合等功能。 6. **网格系统**:...

    ionic-v1.3

    本文将详细介绍 Ionic v1.3 的关键特性和相关技术栈,包括Node.js、JavaScript以及与之相关的开发环境和工具。 在 Ionic v1.3 中,开发者可以利用HTML5、CSS3和JavaScript来创建功能丰富的跨平台移动应用,这些应用...

    JavaScript高级程序设计(第四版)中文版.pdf文件 下载就能看,还有很多书的电子版,上传的没上传的,可以找我要

    1.3 JavaScript版本 9 1.4 小结 10 第 2章 HTML中的JavaScript 11 2.1 script元素 11 2.2 行内代码与外部文件 18 2.3 文档模式 18 2.4 noscript元素 19 2.5 小结 20 第3章 语言基础 21 3.1 语法 21 3.2 ...

    JavaScript核心及实践

    - **变量的作用域**: 理解变量作用域对于编写有效和可维护的代码非常关键。 - **2.3运算符** - **中括号运算符([])**: 用于对象、数组等访问元素或属性。 - **点运算符(.)**: 同样用于对象、数组等访问元素或...

    JavaScript:函数与作用域

    ### JavaScript:函数与作用域 #### 一、函数基础 **1.1 函数声明与表达式** 在JavaScript中,函数是一段可重用的代码块,用来执行特定任务。函数可以通过两种方式进行定义:函数声明和函数表达式。 - **函数...

    JDK1.5,J2EE1.3,Struts,MySql,JavaScript帮助文件(CHM)

    这是一个综合性的技术资源包,包含了Java开发环境JDK1.5、企业级Java应用平台J2EE1.3、Web应用程序框架Struts、关系型数据库MySQL以及客户端脚本语言JavaScript的相关帮助文档。这些文档通常以CHM(Compiled Help ...

    django 1.3 docs

    10. **静态文件处理**:Django 1.3 提供了处理静态文件(如CSS、JavaScript和图片)的功能,包括在开发时自动收集和在生产环境下的部署。 11. **数据库操作**:Django 1.3 支持多种数据库引擎,如SQLite、MySQL、...

    JavaScript核心技术 PDF扫描版

    1.3你能用JavaScript来做什么 1.4JavaScript初探:“HelloWorld!” 1.5JavaScript沙箱 1.6可访问性和JavaScript的最佳实践 第2章JavaScript数据类型与变量 2.1变量的标识 2.2作用域 2.3简单类型 2.4常量:有名称但...

    数据结构与算法JavaScript描述1

    - **全局变量**:JavaScript中全局变量是全局可见的,这可能导致变量污染和意外的副作用,因此在实现算法时需谨慎使用。 - **函数**:JavaScript的函数可以作为一等公民,可以作为参数传递,也可以作为返回值。 ###...

    django 1.3 官方手册

    - **模型层**:介绍了 Django 的模型概念及其在数据库中的作用,包括字段定义、数据验证、关系管理等。 - **模板层**:讲解了 Django 模板系统的基础知识,如变量语法、标签使用、继承机制等。 - **视图层**:阐述了...

    JavaScript从入门到精通学习笔记

    **1.3 JavaScript的执行位置** - **内部脚本**:直接在 HTML 文件的 `&lt;script&gt;` 标签内编写 JavaScript 代码。 ```html alert('你好!'); ``` - **外部脚本**:将 JavaScript 代码放在单独的 .js 文件中...

    JavaScript学习笔记讲解

    - 变量:使用`var`、`let`或`const`声明变量,其中`let`和`const`是ES6引入的新特性,具有块级作用域。 - 运算符号:包括算术运算符(+、-、*、/、%)、比较运算符(==、!=、&gt;、&lt;等)、逻辑运算符(&&、||、!)...

    javascript基础

    ##### 1.3 第一个JavaScript程序示例 创建一个简单的JavaScript程序通常包含以下几个步骤: 1. **HTML结构**:首先需要有一个HTML文件,其中包含一个或多个元素,这些元素可以通过JavaScript进行操作。 2. **...

Global site tag (gtag.js) - Google Analytics