Global variables are declared outside of a function for accessibility throughout the program, while local variables are stored within a function using var for use only within that function’s scope. If you declare a variable without using var, even if it’s inside a function, it will still be seen as global:

全局变量在函数外部声明,以在整个程序中进行访问,而局部变量使用var存储在函数中,仅在该函数的范围内使用 。 如果在不使用var情况下声明变量,即使该变量位于函数内部,则仍将其视为全局变量:

var x = 5; // globalfunction someThing(y) {var z = x + y;console.log(z);
}function someThing(y) {x = 5; // still global!var z = x + y;console.log(z);
}function someThing(y) {var x = 5; // localvar z = x + y;console.log(z);
}

A global variable is also an object of the current scope, such as the browser window:

全局变量也是当前作用域的对象,例如浏览器窗口:

var dog = “Fluffy”;
console.log(dog); // Fluffy;var dog = “Fluffy”;
console.log(window.dog); // Fluffy

It’s a best practice to minimize global variables. Since the variable can be accessed anywhere in the program, they can cause strange behavior.

最佳做法是最小化全局变量。 由于可以在程序中的任何位置访问变量,因此它们可能导致奇怪的行为。

References:

参考文献:

  • var -Javascript|MDN

    var -Javascript | MDN

  • You Don’t Know JavaScript: Scopes & Closures

    您不懂JavaScript:范围和闭包

javascript中的全局变量和window.variable有什么区别? (What’s the difference between a global var and a window.variable in javascript?)

The scope of JavaScript variables are either global or local. Global variables are declared OUTSIDE the function and its value is accessible/changeable throughout the program.

JavaScript变量的范围是全局或局部。 全局变量在函数之外声明,并且其值在整个程序中都可以访问/更改。

You should ALWAYS use var to declare your variables (to make locally) else it will install GLOBALLY

您应该始终使用var声明变量(在本地生成),否则它将全局安装

Take care with the global variables because they are risky. Most of the time you should use closures to declare your variables. Example:

请注意全局变量,因为它们具有风险。 大多数时候,您应该使用闭包来声明变量。 例:

(function(){var myVar = true;
})();

更多信息: (More Information:)

  • Visual guide to JavaScript variable definitions and scope

    可视化JavaScript变量定义和范围指南

  • Intro to JavaScript variable definitions and hoisting

    JavaScript变量定义和提升简介

翻译自: https://www.freecodecamp.org/news/global-variables-in-javascript-explained/

JavaScript中的全局变量介绍相关推荐

  1. javascript中in用法介绍

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. Javascript中 toFixed 规则介绍及其改进方法

    今天看了司徒大神的一篇博文,这篇文章专门介绍了toFixed的规则,搬来记录一下.文末有原文链接. javascript中toFixed使用的是银行家舍入规则. 银行家舍入:所谓银行家舍入法,其实质是 ...

  3. SQL Server中常用全局变量介绍

    在SQL Server中,全局变量是一种特殊类型的变量,服务器将维护这些变量的值.全局变量以@@前缀开头,不必进行声明,它们属于系统定义的函数.下表就是SQL Server中一些常用的全局变量. 全局 ...

  4. JavaScript 中的函数介绍

    简而言之函数只不过是一组执行某个操作的语句.函数可能会有一些输入参数(在函数体中使用),并在执行后返回值.JavaScript函数也具有这些特性,但它们不仅仅是常规函数.JavaScript函数是对象 ...

  5. JavaScript 中 Location 对象介绍

    目录 Location 对象 Location 对象属性 Location 对象方法 Location 对象方法 细解 1 window.loction.href 语法: 说明: 举例: 2  win ...

  6. 【前端学习】前端学习第十三天:JavaScript中DOM技术介绍

    DOM即文档对象模型,是一种与浏览器.编程平台和语言无关的应用程序接口,它提供了动态访问和更新文档的内容.结构和样式的基本方法. 下面是网页文档对象对应的节点树: DOM中节点具有不同的类型,常见的节 ...

  7. html5自定义变量,javascript中怎么定义全局变量?

    javascript中定义全局变量的方法:1.使用var+变量名,在方法外部定义全局变量.2.在方法内部不使用关键字直接定义.3.使用window全局对象定义. JavaScript定义全局变量的方法 ...

  8. html 多页面全局变量,JavaScript如何定义全局变量

    JavaScript中定义全局变量主要分为显式声明或者隐式声明.下面本篇文章就来给大家具体介绍一下,希望对大家有所帮助. 方法1:显式声明 使用var(关键字)+变量名(标识符)的方式在functio ...

  9. javascript 中的window, document, screen都有什么区别?

    谷歌之后,从stackoverflow上找到的高赞答案: https://stackoverflow.com/questions/9895202/what-is-the-difference-betw ...

最新文章

  1. 敏感性与特异性理解笔记
  2. 以sysdba身份登录oracle报ORA-1031权限不足错误之完美分析
  3. JavaScript -- 理解对象的属性
  4. 鸟哥的Linux私房菜(基础篇)-第三章、主机规划与磁盘分区(三.4. 重点回顾)
  5. MySql中的运算符
  6. 输入输出,数据类型,运算符
  7. 工业机器人调运角度_工业机器人如何精准选型,这九大参数告诉你!
  8. MySQL Server Architecture
  9. 安卓学习笔记09:常用布局 - 帧式布局
  10. groupmod 修改用户组信息
  11. 抖音去水印,快手去水印,皮皮虾去水印操作方法(2019.6.12有效)
  12. TeamView 无法捕捉画面问题的解决办法
  13. appstore开发者中文名称修改
  14. w ndows10怎么没体验指数,Win10如何使用WinSAT测试Windows体验指数?
  15. 如何将中文转为计算机语言,怎么将中文系统变成英文系统
  16. XSS-challenge
  17. sqlplus配置连接mysql_不安装oracle客户端用sqlplus连接数据库
  18. Javascript的优点和缺点
  19. acdream 1725 哗啦啦的小彭玉染色问题 离散化并查集
  20. 【操作系统】知识点集合(幕布,思维导图)

热门文章

  1. 07-图6 旅游规划 (25 分)
  2. 【金三银四】微软java后端社招
  3. 解决做好一个机器学习项目的3个问题
  4. Go语言实现HashSet
  5. webBroser获取cookie
  6. day09_读写分离_Atlas小记
  7. [摘抄]软件设计模式的几个原则
  8. Visual Basic.NET中访问数据的方法(zz)
  9. linux shell 获取本机ip 写入文件
  10. 猿课python 第三天