当前位置: 首页 > wzjs >正文

建设积分兑换商城网站特效炫酷的网站

建设积分兑换商城网站,特效炫酷的网站,移动网页设计,网站推广策划案效果好概念 作用域:var 是函数作用域,let 是块级作用域。提升:var 会被提升并初始化为 undefined,let 也会提升,但在声明前访问会导致错误。重声明:var 允许在同一作用域内重复声明,let 不允许。循环…

概念

  • 作用域var 是函数作用域,let 是块级作用域。
  • 提升var 会被提升并初始化为 undefinedlet 也会提升,但在声明前访问会导致错误。
  • 重声明var 允许在同一作用域内重复声明,let 不允许。
  • 循环中的行为:在 for 循环中,使用 let 会创建一个新的作用域,而 var 只会有一个作用域。

因此,通常建议使用 let 来声明变量,以避免由于 var 的作用域和提升行为导致的潜在问题。

1. var 和 let 的作用域

  • var 的作用域是 函数作用域,即它声明的变量只在当前函数内有效。如果在函数外部声明了 var 变量,则该变量是全局的。

  • let 的作用域是 块级作用域,即它声明的变量仅在当前代码块(如 if 语句、for 循环等)内有效。

例子:
function testVar() {if (true) {var x = 10;}console.log(x); // 输出 10,x 是函数作用域
}function testLet() {if (true) {let y = 20;}console.log(y); // 报错 ReferenceError: y is not defined,y 仅在块级作用域内有效
} 

2. var 和 let 的提升(Hoisting)

  • var 声明的变量会被提升到函数或全局作用域的顶部,但它们的值不会提升,初始化的值保持在声明时的位置。

  • let 声明的变量同样会被提升,但它们不会被初始化。在变量声明之前访问它们会导致 ReferenceError,这被称为“暂时性死区”(TDZ,Temporal Dead Zone)。

例子: 
function testHoisting() {console.log(a); // 输出 undefined,变量被提升但没有初始化var a = 5;console.log(b); // 报错 ReferenceError: Cannot access 'b' before initializationlet b = 10;
}testHoisting();

3. var 和 let 的重声明

  • var 允许在同一作用域内重复声明变量。

  • let 不允许在同一作用域内重复声明同一变量,否则会抛出错误。

例子: 
var x = 10;
var x = 20; // 不报错,x 会被重新赋值为 20let y = 30;
let y = 40; // 报错 SyntaxError: Identifier 'y' has already been declared

4. var 和 let 在循环中的表现

在使用 var 和 let 声明循环变量时,它们的作用域也不同。var 声明的循环变量是函数作用域,而 let 声明的循环变量是块级作用域,这意味着在异步操作(如 setTimeout)中使用 let 会得到不同的行为。

例子:
// 使用 var
for (var i = 0; i < 3; i++) {setTimeout(function() {console.log(i); // 输出 3 次 3,因为 var 是函数作用域,i 在整个函数内都可见}, 1000);
}// 使用 let
for (let i = 0; i < 3; i++) {setTimeout(function() {console.log(i); // 输出 0, 1, 2,let 是块级作用域,每次迭代都有一个新的 i}, 1000);
}

 

http://www.dtcms.com/wzjs/556782.html

相关文章:

  • 三原做网站wordpress里如何添加ALT标签
  • 网站建设简单案例有域名有服务器如何做网站
  • 自适应网站举例保定关键词排名推广
  • 中国做水产的有什么网站如何翻译wordpress主题
  • 在线解压网站新浪门户网站是谁做的
  • 全国知名网站建设公司网站视频做参考文献
  • 电商网站开发 数商云兼容最好wordpress主题
  • 北京西站地址耐克网站建设策划方案
  • 公司平台网站建设wordpress只能下载一个文件
  • 咸宁网站建设网络公司网站建设模板登录界面
  • 手机响应式网站开发模板之家老兵老兵建设集团有限公司
  • wordpress导航图标设置增城网站怎么做seo
  • 外贸网站建站用什么棋牌,彩票网站建设
  • 网站建设哪家效益快4p营销策略分析
  • 导航 网站 分析vue 实现网站开发
  • 徐州市建设局官方网站个人简历模板网站
  • 上海高新技术企业有哪些网站优化检测
  • 用dw设计网站怎么做asp旅游网站模板下载
  • 珠海网站建设推广方案深圳网站建设 信科网络
  • 泰兴住房和城乡建设厅网站阿里云网站备案资料
  • 章丘网站开发培训上海迪士尼网页制作
  • 伴奏网站防盗是怎么做的硬件开发岗位要求
  • 网站 动态 静态区总工会加强网站意识形态建设
  • wordpress果酱主题分享seo网站建设培训
  • 网站设计中的div是什么wordpress的模板怎么用
  • 分类信息网站怎么做SEO公司网站建设是什么意思
  • 建设官方网站企业登录网络维护是什么意思
  • 手机端网站尺寸做网站需要会语言吗
  • 网站建设 源代码手机免费建网站
  • 厦门有什么网站制作公司wordpress 国内