百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>JS教程> 详解JavaScript之作用域
分享文章到:

详解JavaScript之作用域

发布时间:09/01 来源:未知 浏览: 关键词:

作用域是可拜访变量的汇合。

JavaScript 作用域

在 JavaScript 中, 对象和函数一样也是变量。

在 JavaScript 中, 作用域为可拜访变量,对象,函数的汇合。

JavaScript 函数作用域: 作用域在函数内修改。

JavaScript 部分作用域

变量在函数内声明,变量为部分作用域。

部分变量:只能在函数内部拜访。

// 此处不克不及调取 carName 变量
function myFunction() {
  var carName = "Volvo";
  // 函数内可调取 carName 变量
}

由于部分变量只作用于函数内,所以不一样的函数可以使用雷同名称的变量。

部分变量在函数开端施行时创立,函数施行完后部分变量会主动烧毁。

JavaScript 全局变量

变量在函数外定义,即为全局变量。

全局变量有 全局作用域: 网页中所有足本和函数均可使用。

var carName = " Volvo";
 
// 此处可调取 carName 变量
function myFunction() {
  // 函数内可调取 carName 变量
}

假如变量在函数内没有声明(没有使用 var 关键字),该变量为全局变量。

以下实例中 carName 在函数内,但是为全局变量。

// 此处可调取 carName 变量
 
function myFunction() {
  carName = "Volvo";
  // 此处可调取 carName 变量
}

JavaScript 变量生命周期

JavaScript 变量生命周期在它声明时初始化。

部分变量在函数施行完毕后烧毁。

全局变量在页面关闭后烧毁。

函数参数

函数参数只在函数内起作用,是部分变量。

HTML 中的全局变量

在 HTML 中, 全局变量是 window 对象: 所有数据变量都属于 window 对象。

//此处可使用 window.carName
 
function myFunction() {
  carName = "Volvo";
}

你晓得吗?

你的全局变量,或者函数,可以覆盖 window 对象的变量或者函数。
部分变量,包罗 window 对象可以覆盖全局变量和函数。

补充

ES6 中的 let 关键字

let 同意你声明一个作用域被限制在块级中的变量、语句或者表达式。与var关键字不一样的是,它声明的变量只能是全局或者整个函数块的。

let 语法:

let var1 [= value1] [, var2 [= value2]] [, ..., varN [= valueN]];

let 声明的变量只在其声明的块或子块中可用,这一点,与 var 类似。二者之间最主要的不同在于 var 声明的变量的作用域是整个封闭函数。

letvar 的不同代码实例:

function varTest() {
 var x = 1;
 if (true) {
  var x = 2; // 一样的变量!
  console.log(x); // 2
 }
 console.log(x); // 2
}

function letTest() {
 let x = 1;
 if (true) {
  let x = 2; // 不一样的变量
  console.log(x); // 2
 }
 console.log(x); // 1
}

相关学习引荐:javascript视频教程

以上就是详解JavaScript之作用域的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有150人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板