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

資訊專欄INFORMATION COLUMN

ES6(一): let,const

blair / 1229人閱讀

摘要:明確規(guī)定,如果區(qū)塊中存在和命令,這個區(qū)塊對這些命令聲明的變量,從一開始就形成了封閉作用域。凡是在聲明之前就使用這些變量,就會報錯。暫時性死區(qū)意味著不再是一個百分百的安全操作了不允許重復(fù)聲明不允許在相同作用域內(nèi),重復(fù)聲明同一個變量。

let,const共同擁有的特點

提供了代碼塊級作用域;(代碼塊是用{}來實現(xiàn)的)

不存在變量提升,先聲明再使用;

存在“暫時性死區(qū)”;

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

“暫時性死區(qū)”。

ES6明確規(guī)定,如果區(qū)塊中存在let和const命令,這個區(qū)塊對這些命令聲明的變量,從一開始就形成了封閉作用域。凡是在聲明之前就使用這些變量,就會報錯。
在代碼塊內(nèi),使用let或者const命令聲明變量之前,該變量是不可用的,這就是“暫時性死區(qū)”。只要在塊級作用域內(nèi)存在let命令,它所聲明的變量就“綁定”在這個區(qū)域,不再受外部的影響。

    var tmp = 123;
    if(true){
        tmp = "abc";//ReferenceError
        let tmp;
    }

在這個if的語句塊內(nèi),tmp跟外面聲明的tmp沒有關(guān)系,所以這個時候tmp相當(dāng)于是一個新的變量。

“暫時性死區(qū)”意味著typeof不再是一個百分百的安全操作了

{
    typeof x;//ReferenceError
    let x;
}

不允許重復(fù)聲明

let不允許在相同作用域內(nèi),重復(fù)聲明同一個變量。

//報錯
function(){
    let a = 10;
    let a = 1;
}
const的注意點

const聲明一個只讀的常量,一旦聲明,常量的值是不能改變的。但是const實際上保證的是變量指向的那個內(nèi)存地址不能改動,并不是變量的值不能改動。

const foo = {};
//可以改變變量的值
foo.prop = 123;

foo = {};//報錯
塊級作用域與之前矛盾點(稍微知道點就行)

塊級作用域與函數(shù)聲明
本來規(guī)定在塊級作用域內(nèi),是不能有函數(shù)聲明的。但是瀏覽器為了兼容以前的代碼,所以是允許的。所以ES6在附錄中規(guī)定,瀏覽器可以有自己的行為,以下的規(guī)則只對ES6的瀏覽器實現(xiàn)有效,其他環(huán)境不用遵守

允許在塊級作用域內(nèi)聲明函數(shù)

函數(shù)聲明類似于var,即會提升到全局作用域或者函數(shù)作用域的頭部

函數(shù)聲明還是會提升到所在塊級作用域的頭部

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

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

相關(guān)文章

  • ES6學(xué)習(xí) 第letconst 命令

    摘要:外層作用域不報錯正常輸出塊級作用域與函數(shù)聲明規(guī)定,函數(shù)只能在頂層作用域和函數(shù)作用域之中聲明,不能在塊級作用域聲明。規(guī)定,塊級作用域之中,函數(shù)聲明語句的行為類似于,在塊級作用域之外不可引用。同時,函數(shù)聲明還會提升到所在的塊級作用域的頭部。 前言:最近開始看阮一峰老師的《ECMAScript 6 入門》(以下簡稱原...

    番茄西紅柿 評論0 收藏2637
  • 帶你入門 JavaScript ES6 ()

    摘要:是國際組織于年月日發(fā)布的第六版,正式名為通常被成為或。二模版字面量提供一種簡單實現(xiàn)表達(dá)式嵌套的字符串字面量操作,簡而言之就是能夠以簡單的方法實現(xiàn)字符串拼接操作。 本文同步 帶你入門 JavaScript ES6 (一),轉(zhuǎn)載請注明出處。 ES6: 是 ECMA國際組織于 2015 年 6 月 17 日發(fā)布的 ECMAScript 第六版,正式名為 ECMAScript 2015,通常被...

    lindroid 評論0 收藏0
  • ES6 知識整理es6快速入門)

    摘要:函數(shù)調(diào)用會在內(nèi)存形成一個調(diào)用記錄,又稱調(diào)用幀,保存調(diào)用位置和內(nèi)部變量等信息。等到運行結(jié)束,將結(jié)果返回到,的調(diào)用幀才會消失。方法用于將一組值,轉(zhuǎn)換為數(shù)組。,和遍歷數(shù)組方法返回一個布爾值,表示某個數(shù)組是否包含給定的值,與字符串的方法類似。 ES6 簡介 ES6, 全稱 ECMAScript 6.0 ,是 JavaScript 的下一個版本標(biāo)準(zhǔn),2015.06 發(fā)版。 let 和 const...

    elva 評論0 收藏0
  • ES6 學(xué)習(xí)筆記(letconst和解構(gòu)賦值

    摘要:另外對于已經(jīng)聲明的變量進(jìn)行解構(gòu)賦值時,要非常小心。因此在行首加,將其強制轉(zhuǎn)化為表達(dá)式執(zhí)行。由于和無法轉(zhuǎn)為對象,所以對它們進(jìn)行解構(gòu)賦值,都會報錯。 let和const let和const是es6新增的兩個變量聲明關(guān)鍵字,與var的不同點在于: (1)let和const都是塊級作用域,在{}內(nèi)有效,這點在for循環(huán)中非常有用,只在循環(huán)體內(nèi)有效。var為函數(shù)作用域。 (2)使用let和con...

    iOS122 評論0 收藏0
  • ES6學(xué)習(xí)摘要(01)(新人學(xué)習(xí))

    摘要:入門一前言由于最近本人在學(xué)習(xí),做一些筆記能夠更好的熟悉,就趁此機(jī)會來寫一篇關(guān)于的新人學(xué)習(xí)摘要吧。的作用域與命令相同只在聲明所在的塊級作用域內(nèi)有效。塊級作用域新增方式和實際上為新增了塊級作用域。同時,函數(shù)聲明還會提升到所在的塊級作用域的頭部。 ECMAScript6/ES6 入門 一、前言 由于最近本人在學(xué)習(xí)ES6,做一些筆記能夠更好的熟悉,就趁此機(jī)會來寫一篇關(guān)于ES6的新人學(xué)習(xí)摘要吧。...

    dmlllll 評論0 收藏0
  • 新手快速學(xué)習(xí)ES6語法,用最快的速度入門ES6就看這里

    摘要:的作用域與命令相同只在聲明所在的塊級作用域內(nèi)有效。數(shù)值和布爾值的解構(gòu)賦值解構(gòu)賦值時,如果等號右邊是數(shù)值和布爾值,則會先轉(zhuǎn)為對象。上面代碼中,數(shù)值和布爾值的包裝對象都有屬性,因此變量都能取到值。默認(rèn)值解構(gòu)賦值允許指定默認(rèn)值。 最近正在學(xué)習(xí)ES6,對于ES6的語法有一些自己的理解, 想寫這篇文章幫助跟我一樣的新手快速入門ES6而不至于連代碼都看不懂. 至于開發(fā)環(huán)境的搭建什么...

    vspiders 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<