国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JavaScript ES6常用基礎知識總結

2024-05-06 15:42:35
字體:
來源:轉載
供稿:網友

ES6 let與const及其相關

塊級作用域

ES6新增了塊級作用域,總結一句話大致就是:大括號{}包起來的代碼塊基本山都可以當做塊級作用域。

常見的有

直接使用{}包起來:

 { var a = 4 }

函數體大括號,if-else大括號,for循環大括號,switch大括號,try-catch大括號等。 需要注意的是,for循環,每一次循環時的{}都是一個獨立的塊級作用域。

 for(let i=0; a < 5; i++){  let j = i }

上面代碼循環了五次,實際上有五個獨立的j。

日常開發中,我們就可以利用這個特性,來創建塊級作用域了。

塊級作用域變量let與const

使用let或const聲明的變量只在當前塊級作用域生效,出了這個代碼塊,就無法訪問。

 {  let a = 5 }console.log(a) // Uncaught ReferenceError: a is not defined

日常開發中,塊級作用域中使用的變量,盡量使用let或者const聲明。

需要注意的問題:

let和const變量一定要先聲明,再使用,避免出錯。不要試圖利用變量提升的特性。
const聲明變量時,一定要初始化,否則會報錯。let建議也在聲明時初始化。
const聲明的變量一旦初始化,以后就不可以在進行賦值操作,但可以對其引用的對象進行更改。

 const noChangeMe;  // Uncaught SyntaxError: Missing initializer in const declaration const noChangeMe = [1,2,4] noChangeMe = [2, 3]  // Uncaught TypeError: Assignment to constant variable noChangeMe[100] = 100 // everything is OK

let和const聲明的變量不能再重復聲明。 雖然var可以無限次重復聲明,但是并不適用于這兩個新的聲明方式。

 let a = 1 let a = 2  // Identifier 'a' has already been declared

不要用window.xxx去調用let與const聲明的變量 ES6規定,let、const、class聲明的全局變量,不屬于頂層對象的屬性。

String

使用反引號”`”
使用``將字符串包起來,可以解決下面的問題:

字符串不能換行,如果換行只能使用+號
字符串中的引號如果和最外層相同,需要進行轉義
字符串中插入變量,需要用+號 以前這樣的寫法:

 var name = 'world' var str = "小明說:/"hello, " + name + "/""  // 小明說:"hello, world"

現在可以方便的寫作:

 var name = 'world' str str = `小明說:"hello, ${name}"`

總的來說,有三個好處:

不怕字符串中出現的引號;
不怕換行,反引號包起來的字符串可以隨便換行;
使用${}將變量或表達式包起來直接放在字符串中,不用寫很多+

ES6 遍歷字符串

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 攀枝花市| 隆子县| 佛教| 淮安市| 华阴市| 睢宁县| 凯里市| 二连浩特市| 江城| 三明市| 花莲市| 资讯 | 榕江县| 瓮安县| 滦平县| 张家港市| 乌海市| 朝阳县| 金堂县| 秀山| 丰宁| 黑龙江省| 深州市| 鄄城县| 杭州市| 福州市| 确山县| 大荔县| 靖远县| 上栗县| 安平县| 荆门市| 科技| 邛崃市| 十堰市| 宝坻区| 监利县| 泽州县| 无锡市| 榆树市| 道真|