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

做网站复杂吗域名代备案

做网站复杂吗,域名代备案,建设网站赚的是什么钱,建站小程序快速上线变量提升(Hoisting) 是 JavaScript 引擎在代码执行前的一个特殊行为,它会将变量声明和函数声明自动移动到当前作用域的顶部。但需要注意的是,只有声明会被提升,赋值操作不会提升。 ​​核心概念​​ 变量声明提升&…

变量提升(Hoisting) 是 JavaScript 引擎在代码执行前的一个特殊行为,它会将变量声明和函数声明自动移动到当前作用域的顶部。但需要注意的是,只有声明会被提升,赋值操作不会提升。


​核心概念​

  1. 变量声明提升(仅 var 和函数参数):
    • 用 var 声明的变量会被提升到作用域顶部,但赋值留在原地。

    • 用 letconst 声明的变量也会被提升,但不会初始化,导致暂时性死区(TDZ)。

  2. 函数声明提升:
    • 函数声明(非函数表达式)整体被提升,包括函数体。


​示例代码​

  1. var 的变量提升
 

javascript

复制

console.log(a); // 输出 undefined(变量声明被提升,但未赋值)
var a = 10;

等价于:

 

javascript

复制

var a;          // 声明提升到顶部
console.log(a); // undefined
a = 10;         // 赋值留在原地
  1. letconst 的暂时性死区
 

javascript

复制

console.log(b); // 报错:Cannot access 'b' before initialization
let b = 20;

虽然 b 的声明被提升,但在声明前访问会触发错误。

  1. 函数声明提升
 

javascript

复制

foo(); // 输出 "Hello"
function foo() {console.log("Hello");
}

等价于:

 

javascript

复制

function foo() { // 函数声明整体提升console.log("Hello");
}
foo();

​注意事项​

  1. 函数表达式不会被提升:

     

    javascript

    复制

    bar(); // 报错:bar is not a function
    var bar = function() { /* ... */ };

    此时 bar 是变量,提升的是变量声明(值为 undefined)。

  2. 函数声明优先级高于变量声明:

     

    javascript

    复制

    console.log(typeof a); // 输出 "function"
    var a = 3;
    function a() {}

​为什么会有变量提升?​
JavaScript 引擎在执行代码前会经历两个阶段:

  1. 编译阶段:解析代码,提升变量和函数声明。
  2. 执行阶段:逐行执行代码。

​如何避免问题?​

  1. 优先使用 letconst:避免 var 的隐式全局变量和提升问题。
  2. 声明变量时先写后用:
     

    javascript

    复制

    let c = 30;
    console.log(c); // 正常输出 30
  3. 使用严格模式("use strict"):禁止意外的全局变量。

​总结​
• 变量提升是 JavaScript 的历史遗留特性,可能导致意外行为。

var 会提升声明但初始化为 undefinedlet/const 存在暂时性死区。

• 函数声明整体提升,函数表达式不会被提升。

• 现代开发中推荐使用 let/const 和函数表达式(箭头函数)来规避问题。

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

相关文章:

  • 电子 网站模板网站建设需要注意什么哪些
  • 微博如何做的跟网站一样软件开发外包工作室
  • 网站被提示危险网站中英文网站好处
  • 景县网站建设济南如何挑选网站建设公司
  • 各国网站的域名05网课课练答案
  • 网站自动采集rss经营网站备案查询
  • 做网站需要好多钱广州哪家网站建设服务好
  • 竹子建站教程网站开发毕设论文
  • 建设企业网站价格wordpress 模板开发
  • 博州建设局网站关键词优化公司济南兴田德润团队怎么样
  • 做网站分为哪些功能的网站定制企业网站
  • 功能多的免费网站建设开封做网站公司汉狮
  • 域名注册服务商网站公司logo图案大全
  • 陕煤建设集团铜川分公司网站一学一做教育视频网站有哪些内容
  • 网站开发技术部经理素质模型免费职业技能培训网
  • 做网站用的什么空间已有域名 做网站
  • 商业网站开发岗位需求分析客户网站建设确认书
  • 网站刚建好怎么做能让百度收录网站建设费用支出方案
  • 做花语的网站设计云平台
  • 信誉好的低价网站建设php做商城网站
  • 做网站一般用什么软件wordpress勋章
  • 网站制作工作室网站建设主机的功能
  • 杭州网站建设小程序辽宁省建设银行e护航网站
  • 门户网站建设询价公告免费设计在线生成
  • 属于网站建设过程规划和准备阶段的是合肥网站建设过程
  • 深圳网站建设开发公司专注网站平台推广公司
  • 企业怎样建立自己的网站张家港建网站价格
  • 网站运营怎么自学wordpress网站页面打开很慢
  • 手机手机端网站建设WORDPRESS网站如何改版
  • 企业网站建设重庆龙岗爱联有学网站建设