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

首頁(yè) > 語(yǔ)言 > JavaScript > 正文

把JavaScript代碼改成ES6語(yǔ)法不完全指南(分享)

2024-05-06 15:26:59
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

目錄

* 核心例子* 修改成靜態(tài)變量(const)或塊級(jí)變量(let) * 開(kāi)始修改 * 疑問(wèn)解釋(重復(fù)定義會(huì)發(fā)生什么) * 疑問(wèn)解釋(let的塊級(jí)作用域是怎樣的) * 疑問(wèn)解釋(const定義的變量在基礎(chǔ)數(shù)據(jù)類型和引用類型中的差異)* 修改成Promise的形式 * 預(yù)備知識(shí)(回調(diào)函數(shù)是什么) * 預(yù)備知識(shí)(如何把回調(diào)函數(shù)改為Promise) * 開(kāi)始修改* 修改成箭頭函數(shù)(Arrow Function) * 預(yù)備知識(shí)(箭頭函數(shù)是什么) * 預(yù)備知識(shí)(箭頭函數(shù)函數(shù)中的this是個(gè)坑) * 開(kāi)始修改* 修改拼接字符串成模板字符串 * 預(yù)備知識(shí)(字符串的拼接方式) * 預(yù)備知識(shí)(改為模板字符串的方式) * 開(kāi)始修改* 修改成解構(gòu)的對(duì)象* 修改成Class

核心例子

文中的例子,請(qǐng)?jiān)谧钚碌腃hrome中測(cè)試。關(guān)于配置ES6轉(zhuǎn)ES5的環(huán)境,不在本文探討的范疇。

// 定義一個(gè)學(xué)生構(gòu)造函數(shù)var People = function(name, age) { this.name = name this.age = age}// 創(chuàng)建小明實(shí)例var xiaoming = new People('xiaoming', 18)// 定義一個(gè)考試函數(shù)// 定義兩個(gè)回調(diào)函數(shù),在適當(dāng)?shù)臅r(shí)候把參數(shù)傳進(jìn)去var examStart = function(callbackSucc, callbackFail) { var result = prompt('1+5=') if(result === '6') { callbackSucc('Awesome. Your answer is ' + result) } else { callbackFail('You can try again. Your answer is ' + result) }}// 開(kāi)始考試// 傳入的兩個(gè)回調(diào)函數(shù)分別處理結(jié)果examStart(function(res) { console.log(res)}, function(res) { console.log(res)})

修改成靜態(tài)變量(const)或塊級(jí)變量(let)

當(dāng)你變量的值需要修改的時(shí)候,應(yīng)該使用塊級(jí)變量(let)。其他時(shí)候,使用靜態(tài)變量(const)。

無(wú)論是靜態(tài)變量(const)還是塊級(jí)變量(let),都不能重復(fù)定義,否則會(huì)報(bào)錯(cuò)。

靜態(tài)變量(const)一旦定義,數(shù)據(jù)類型不可更改。但是引用類型,如Array,Object,都可以用相應(yīng)的原型方法對(duì)數(shù)據(jù)的內(nèi)部進(jìn)行操作。

開(kāi)始修改

我們這里定義的變量都不需要修改,所以直接全部改為const。在項(xiàng)目中,判斷是改為const還是let有一個(gè)技巧,可以使用編輯器的變量復(fù)選功能(如,sublime中是雙擊變量名之后ctrl+d)。然后判斷代碼中是否對(duì)這個(gè)變量進(jìn)行過(guò)賦值,以及根據(jù)自己的判斷是否需要對(duì)這個(gè)變量進(jìn)行修改,不需要?jiǎng)t用const。

// 修改一 var ==> constconst Student1 = function(name, age) { this.name = name this.age = age}// 修改二 var ==> constconst xiaoming1 = new Student1('xiaoming', 18)// 修改三 var ==> constconst examStart1 = function(callbackSucc, callbackFail) { // 修改四 var ==> const const result = prompt('1+5=') if(result === '6') { callbackSucc('Awesome. Your answer is ' + result) } else { callbackFail('You can try again. Your answer is ' + result) }}examStart1(function(res) { console.log(res)}, function(res) { console.log(res)})            
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 郯城县| 辽源市| 乌恰县| 都安| 嘉禾县| 台北市| 鸡西市| 健康| 剑阁县| 积石山| 镇赉县| 涟源市| 迁西县| 台前县| 略阳县| 济南市| 石棉县| 安化县| 枝江市| 仁寿县| 射洪县| 门源| 安平县| 许昌县| 吕梁市| 陵川县| 墨玉县| 贞丰县| 乌兰浩特市| 衡水市| 英吉沙县| 正阳县| 佛学| 卢龙县| 苏尼特左旗| 大兴区| 凭祥市| 宜春市| 襄城县| 安泽县| 五寨县|