国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

let 以及 const

RaoMeng / 485人閱讀

摘要:相關(guān)知識(shí)點(diǎn)以及命令聲明的變量只在它所在的代碼塊有效。命令聲明的常量也是不提升,同樣存在暫時(shí)性死區(qū)。對(duì)于簡(jiǎn)單的數(shù)據(jù)數(shù)值字符串布爾值,值就保存在變量指向的那個(gè)內(nèi)存地址,因此等同于常量。

es6 相關(guān)知識(shí)點(diǎn)  let 以及 const

let命令

let 聲明的變量只在它所在的代碼塊有效。

</>復(fù)制代碼

  1. //let 聲明 只在當(dāng)前作用域有效
  2. var a = [];
  3. for (let i = 0; i < 10; i++) {
  4. a[i] = function () {
  5. console.log(i);
  6. };
  7. }
  8. a[6](); // 6
  9. //var 聲明 在全局作用域有效
  10. var a = [];
  11. for (var i = 0; i < 10; i++) {
  12. a[i] = function () {
  13. console.log(i);
  14. };
  15. }
  16. a[6](); // 10

let 不存在變量提升,在let聲明之前使用變量,會(huì)報(bào)錯(cuò)ReferenceError

</>復(fù)制代碼

  1. // var 的情況
  2. console.log(foo); // 輸出undefined
  3. var foo = 2;
  4. // let 的情況
  5. console.log(bar); // 報(bào)錯(cuò)ReferenceError
  6. let bar = 2;

let 不允許重復(fù)聲明

</>復(fù)制代碼

  1. // 報(bào)錯(cuò)
  2. function () {
  3. let a = 10;
  4. var a = 1;
  5. }
  6. // 報(bào)錯(cuò)
  7. function () {
  8. let a = 10;
  9. let a = 1;
  10. }

不能在函數(shù)內(nèi)部重新聲明參數(shù)

</>復(fù)制代碼

  1. function func(arg) {
  2. let arg; // 報(bào)錯(cuò)
  3. }
  4. function func(arg) {
  5. {
  6. let arg; // 不報(bào)錯(cuò)
  7. }
  8. }

const 命令

一旦聲明,常量的值就不改變,只在聲明所在的塊級(jí)作用域有效。

const 命令聲明的常量也是不提升,同樣存在暫時(shí)性死區(qū)。

本質(zhì): const 實(shí)際上保證的,不是變量的值不能改動(dòng),而是變量指向的那個(gè)內(nèi)存地址不得改動(dòng)。對(duì)于簡(jiǎn)單的數(shù)據(jù)(數(shù)值、字符串、布爾值),值就保存在變量指向的那個(gè)內(nèi)存地址,因此等同于常量。但對(duì)于復(fù)合類(lèi)型(引用類(lèi)型)的數(shù)據(jù)(主要是對(duì)象和數(shù)組),變量指向的內(nèi)存地址,保存的只是一個(gè)指針, const 只能保證這個(gè)指針是固定的,至于它指向的數(shù)據(jù)結(jié)構(gòu)是不是可變的,不能控制。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/85110.html

相關(guān)文章

  • ES6學(xué)習(xí)第一節(jié) 塊級(jí)作用域的聲明以及綁定 (一) let聲明

    摘要:塊級(jí)作用域綁定變量聲明的變量聲明與其他的一些計(jì)算機(jī)語(yǔ)言不同,在類(lèi)的語(yǔ)言中,變量總是在被聲明的地方創(chuàng)建而在中變量創(chuàng)建的位置取決于你如何聲明它,為我們提供了新的聲明方式用來(lái)讓開(kāi)發(fā)者能夠更好的控制變量的作用域我們通過(guò)聲明的變量,無(wú)論其聲明位置在哪 塊級(jí)作用域綁定 1.變量聲明 JS的變量聲明與其他的一些計(jì)算機(jī)語(yǔ)言不同,在類(lèi)C的語(yǔ)言中,變量總是在被聲明的地方創(chuàng)建;而在JS中變量創(chuàng)建的位置取決于...

    chanthuang 評(píng)論0 收藏0
  • 初入ES6-letconst以及代碼塊

    摘要:變量和常量的聲明一般的聲明,不在函數(shù)內(nèi)就是全局變量,值可以是基本和引用值,可以隨時(shí)修改和刪除語(yǔ)法同一個(gè)作用域的聲明,只要有同樣的聲明都會(huì)報(bào)錯(cuò),只能修改值語(yǔ)法,和一樣,但是不能更改值以上兩個(gè)語(yǔ)法都不存在變量提升的效果直接使用的話,直接引用錯(cuò)誤 變量和常量的聲明 var a = 34; //一般的聲明,不在函數(shù)內(nèi)就是全局變量,值可以是基本和引用值,可以隨時(shí)修改和刪除 ...

    wwolf 評(píng)論0 收藏0
  • vue分析之template模板解析AST

    摘要:注意看注釋很粗很簡(jiǎn)單,我就是一程序員姓名,年齡,請(qǐng)聯(lián)系我吧是否保留注釋定義分隔符,默認(rèn)為對(duì)于轉(zhuǎn)成,則需要先獲取,對(duì)于這部分內(nèi)容,做一個(gè)簡(jiǎn)單的分析,具體的請(qǐng)自行查看源碼。其中的負(fù)責(zé)修改以及截取剩余模板字符串。 通過(guò)查看vue源碼,可以知道Vue源碼中使用了虛擬DOM(Virtual Dom),虛擬DOM構(gòu)建經(jīng)歷 template編譯成AST語(yǔ)法樹(shù) -> 再轉(zhuǎn)換為render函數(shù) 最終返回...

    2bdenny 評(píng)論0 收藏0
  • ES6 系列之 letconst

    摘要:塊級(jí)作用域存在于函數(shù)內(nèi)部塊中字符和之間的區(qū)域和塊級(jí)聲明用于聲明在指定塊的作用域之外無(wú)法訪問(wèn)的變量。和都是塊級(jí)聲明的一種。值得一提的是聲明不允許修改綁定,但允許修改值。這意味著當(dāng)用聲明對(duì)象時(shí)沒(méi)有問(wèn)題報(bào)錯(cuò)臨時(shí)死區(qū)臨時(shí)死區(qū),簡(jiǎn)寫(xiě)為。 塊級(jí)作用域的出現(xiàn) 通過(guò) var 聲明的變量存在變量提升的特性: if (condition) { var value = 1; } console.lo...

    PascalXie 評(píng)論0 收藏0
  • javascript中var、letconst聲明的區(qū)別

    摘要:聲明的變量存在變量提升,聲明的變量不存在變量提升。聲明的變量允許重新賦值,聲明的變量不允許重新賦值。注意跨腳本聲明重復(fù)變量也會(huì)報(bào)錯(cuò)。中出現(xiàn)的任何元素在聲明中出現(xiàn),語(yǔ)法錯(cuò)誤。中的是如此的怪異。對(duì)中的聲明進(jìn)行實(shí)例化。 我在上一篇文章javascript中詞法環(huán)境、領(lǐng)域、執(zhí)行上下文以及作業(yè)詳解中的最后稍微提到了有關(guān)var、let、const聲明的區(qū)別,在本篇中我會(huì)重點(diǎn)來(lái)分析它們之間到底有什么...

    Yujiaao 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<