web前端框架Javascript开发基础之JavaScript作用域
在JavaScript中,对象和函数也是变量。在JavaScript中,作用域是你可以访问的变量、对象和函数的集合。JavaScript有函数作用域: 这个作用域在函数内变化。
一、本地JavaScript变量
一个变量声明在JavaScript函数内部,成为函数的局部变量。
局部变量有局部作用域: 它们只能在函数中访问。
JS:
//code here can not use carName
由于局部变量只在它们的函数中被识别,所以具有相同名称的变量可以在不同的函数中使用。当函数启动时创建局部变量,当函数完成时删除。
二、全局JavaScript变量
函数外声明的变量, 成为全局变量。全局变量具有全局作用域: 网页上的所有脚本和函数都可以访问它。
自动全局
如果给未声明的变量赋值, 它会自动成为全局变量。
此代码示例将声明一个全局变量carName,即使赋的值是函数内部。
myFunction();
// code here can use carName
function myFunction() {
carName = "Volvo";
}
不要创建全局变量,除非你非常需要,在严格模式下"Strict Mode"自动全局变量将失败。
三、在HTML中的全局变量
在JavaScript中,全局作用域是完整的JavaScript环境。
在HTML中,全局作用域是window对象。所有的全局变量都属于window对象。
在HTML中,所有的全局变量将成为窗口window变量。
![IMG_259](https://img-blog.csdnimg.cn/89114b1e63114299b1cd851dd2497128.png) 全局变量(或函数)可以覆盖窗口变量(或函数). 任何函数,包括窗口对象,都可以覆盖全局变量和函数.
四、JavaScript代码块作用域
表中是var,let和const之间的区别。
用var关键字声明的变量不能具有块作用域,{}可以从块外部访问在块内部声明的变量:
{
var num = 50;
}
// num 能在这里使用
用let关键字声明的变量可以具有“块作用域”。
{}不能从块外部访问在块内部声明的变量:
{
let num = 50;
}
// num不能在这里使用
声明变量with const与let]涉及块作用域类似。
{
const num = 50;
}
// num不能在这里使用
常量的值不能通过重新分配而更改,也不能重新声明。
五、总结
本文基于JavaScript,介绍了了函数作用域和变量作用域。介绍了变量中全局变量的几种显示的方法,在HTML中的全局变量应该如何去表示。通过案例的讲解,让读者更好的去理解。
代码很简单, 希望能够帮助你学习。
文章来源:网络 版权归原作者所有
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理
相关文章
- JavaScript高级[通俗易懂]
- 【说站】javascript如何使用构造函数继承
- 【说站】javascript new如何调用构造函数
- 【说站】javascript max和min的使用
- web基础知识_Web开发基础
- JavaScript 基础
- JavaScript学习总结(九)——Javascript面向(基于)对象编程详解编程语言
- 对 JavaScript 构建工具的 6 个预测
- javascript第一课
- JavaScript开发时的五个注意事项
- Javascript常用运算符(Operators)-javascript基础教程
- Javascript&DHTMLDOM基础和基本API
- JavaScript监测ActiveX控件是否已经安装过的代码
- JavaScript基础问答二
- javascript对表格的行和列都能加亮显示
- javascript面向对象编程基础:封装
- JavaScript基础知识被自己遗忘的
- JavaScript文本域字体大小选择功能
- AppBaseJs类库网上常用的javascript函数及其他js类库写的
- javascript防止刷新,后退,关闭
- JavaScript基础篇之运算符、语句(二)
- JavaScript基础篇之变量作用域、传值、传址的简单介绍与实例
- javascript在myeclipse中报错的解决方法
- JavaScript中instanceof与typeof运算符的用法及区别详细解析
- JavaScript基础语法、dom操作树及document对象
- JavaScript验证电子邮箱的函数