`

javascript变量环境

 
阅读更多

在函数内部,最接近的环境就是函数的局部环境;在with语句中,最接近的环境就是函数环境,如果初始化变量时没有使用var声明,则变量会自动被添加到全局环境.

 

1.全局环境的变量

for(var i=0;i<10;i++){
  doSomething(i);
}
alert(i);//10

 2.with延长作用域连

function buildUrl(){
   var qs="aaaa";
   
   with(location){
      var url=href+qs;
   }
   return url;
}

 

3.局部环境

function add(num1,num2){
   var sum = num1+num2;
   return sum;
}
 
var result = add(10,20);//30
alert(sum);//由于sum不是有效的变量,因此导致报错

 4.没有使用var 变成全局

function add(num1,num2){
   sum = num1+num2;
   return sum;
}
 
var result = add(10,20);//30
alert(sum);//30

 

分享到:
评论

相关推荐

    深入理解变量作用域

    有关作用域的新描述给理解多环境下的变量提供了一种有用的方法,它为javascript的工作过程提供了一个强大的新理解。 每个javascript执行环境都有一个和它关联在一起的作用域链(scope chain).这个作用域链是一个对象...

    【JavaScript源代码】Vue CLI中模式与环境变量的深入详解.docx

    Vue CLI中模式与环境变量的深入详解  在实际项目的开发中,我们一般会经历项目的开发阶段、测试阶段和最终上线阶段,每一个阶段对于项目代码的要求可能都不尽相同,那么我们如何能够游刃有余的在不同阶段下使我们的...

    JavaScript的变量声明与声明提前用法实例分析

    本文实例讲述了JavaScript的变量声明与声明提前用法。分享给大家供大家参考,具体如下: ...1. 声明变量的作用范围限定在其执行的上下文环境中。未声明的变量总是全局的。 function x() { y = 1; // Throws a Refe

    Web前端框架应用:第7章 Vue开发环境-环境变量及模式.pptx

    所以为了方便管理,在Vue CLI中可以为不同的环境配置不同的环境变量。 7.4 环境变量和模式 Vue CLI 3构建的项目目录中,移除了config和build这两个配置文件,并在项目根目录中定义了4个文件,用来配置环境变量,具体...

    疯狂html5+css3+javascript完整版第二部分

    建议安装Apache的Tomcat7 0 20 不要使用安装文件安装 而是采用解压缩的安装方式 安装Tomcat需要增加JAVA HOME环境变量 环境变量值为JDK安装路径 "&gt;疯狂html5+css3+javascript完整版是第一部分 亲们漏掉了这部分...

    详解javascript 变量提升(Hoisting)

    不用以上关键字直接赋值的变量会挂载与windows环境下; let a=9 const a=1 var a=6 c=5 声明函数的方法 javascript中声明函数的方法有两种:函数声明式和函数表达式。 //函数声明 function say(){ console.log('...

    JavaScript 语言基础教程

    轻量级:JavaScript 是一种轻量级的编程语言,不需要昂贵的开发环境,只需一个文本编辑器和浏览器即可开始编程。 解释型语言:JavaScript 代码在运行时被解释执行,无需编译。 动态类型:JavaScript 是一种动态类型...

    JavaScript语言参考手册

    该站在资源区中包括解决问题的信息,以及设置 JavaScript 环境的额外帮助。 http://help.netscape.com/products/tools/livewire 这是 Netscape 的 LiveWire 数据库服务的技术支持页。它包含了关于在你的 ...

    javascript 使用手册

    JavaScript的编写环境:文本编辑器 JavaScript的执行平台:Web浏览器 JavaScript的执行方式:解释执行(由上而下) JavaScript的版本:JavaScript1.0——JavaScript1.4 浏览器对JavaScript的支持: ...

    疯狂html5+css3+javascript完整版

    (2) 本书少量程序需要使用Java编译、运行,建议安装jdk-7u3-windows-i586.exe,安装完成后,添加CLASSPATH环境变量,该环境变量的值为.;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar。 为了可以编译和运行...

    浅谈Javascript变量作用域问题

    Js会将在if中定义的变量添加到当前的执行环境中,尤其在使用for循环时需要注意与其他语言的差异。 代码如下:  for(var i=0; i&lt;10; i++){  ;  }    alert&#40;i&#41;; // 结果:10 这里仅仅是个人的理解...

    07-变量提升:JavaScript代码是按顺序执行的吗?_For_vip_user_0011

    介绍,现在你只需要知道,在执上下中存在个变量环境的对象变量环境的对象(ViriableEnvironment),该对象中保存了变量提升的内容,如上代码中的变量

    10-作用域链和闭包:代码中出现相同的变量,JavaScript引擎是如何选择的?_For_vip_user_0011

    在上篇章中我们讲到了什么是作域,以及ES6是如何通过变量环境和词法环境来同时持变量提升和块级作域,在最后我们也提到了如何通过词法环境和变量环境来查找变量,这其中

    一个Babel宏,可根据环境变量有条件地导入某些内容。-JavaScript开发

    一个Babel宏,可根据环境变量有条件地导入某些内容。 perenv.macro.js一个Babel宏,用于根据环境变量有条件地导入某些内容。 为什么这是一个宏? 如果在构建时未设置环境变量,则可以防止导入成为应用程序代码的一...

    火狐JavaScript调试器(Venkman) 0.9.89 插件版.rar

    他提供了强大的对JavaScript的调试功能,大家最常用的IDE开发环境的调试器中有的功能,基本都能够在Venkman上找到。断点调试、单步跟踪、监视变量等。不管是开发网页中的JavaScript部分,还是进行火狐扩展开发,...

    深入Javascript函数、递归与闭包(执行环境、变量对象与作用域链)使用详解

    本篇文章对Javascript中函数、递归与闭包(执行环境、变量对象与作用域链)的使用进行了详细的分析介绍。需要的朋友参考下

    Javascript逆向分析+Cookie加密+补环境+逆向学习

    JavaScript逆向分析、Cookie加密、补环境搭建、逆向学习等技术和方法相互交织,共同构 成了一个丰富而复杂的学习和研究领域。深入探索这些领域,将有助于我们更好地理解和运用JavaScript编程,提升自身的反混淆能力...

    javascript执行环境及作用域详解

     书上概念,执行环境定义了变量或者函数有权访问的其他数据,决定了他们各自的行为。每个执行环境都有一个与之关联的变量对象。环境中定义的所有变量和函数都保存在这个对象中。虽然我们在编写代码的时候无法访问这...

    详解如何在Javascript和Sass之间共享变量

    在环境之间共享变量是编程的圣杯。以下是在Javascript和 Sass(或CSS!)之间共享变量的方法。 随着大型单页应用程序的兴起,Javascript和CSS越来越交织在一起。通常在两个值之间复制值(例如,与React的...

Global site tag (gtag.js) - Google Analytics