亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript中怎樣避免編寫不良代碼

發布時間:2021-09-30 16:23:05 來源:億速云 閱讀:121 作者:柒染 欄目:web開發

這期內容當中小編將會給大家帶來有關JavaScript中怎樣避免編寫不良代碼,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

具有不同接口的替代類

由于重復,兩個功能相同但接口不同的類并不好。

我們不想那樣。 因此,我們可能要使用共享代碼創建一個超類,然后使子類具有不同的方法。

庫類不完整

重用并沒有被高估。

圖書館建設者的工作艱巨。 他們可能會開設不完整的課程,但不允許我們修改它們以完成我們希望他們做的事情。

因此,這使庫類對我們毫無用處,除非我們可以添加所需的功能。

我們可能必須直接向這些類添加新方法來解決此問題。

例如,如果我們導入了一個類,則可以通過編寫以下代碼來添加自己的方法:

const mixin = {   foo() {     //...   },   bar() {     //...   } } Object.assign(Foo.prototype, mixin);

在上面的代碼中,我們將Foo類的原型中的代碼與mixin對象中的方法合并,以使用Object.assign方法將更多方法合并到該類中。

數據類型

數據類是僅具有字段的類。

這些類可能被其他類過多地操作。

因此,如果所有公開領域都公開了,我們應該封裝它們。

如果需要,我們還可以封裝收集字段。

為了封裝它們,我們可以將字段設為私有,并添加訪問和設置它們的方法。

拒絕繼承

子類繼承父類可以訪問它們的方法。

如果我們不需要父類中的這些類,則可以將它們下推到子類中。

然后,并不是所有的子類都將從父類繼承方法,而它們仍然可以留在需要它們的子類中。

注釋

評論對某些事情很有用。 我們可以評論為什么要執行某項操作,但是由于我們已經在代碼中進行了操作,因此無需在評論中說明我們如何執行操作。

還注釋代碼是不好的。 首先,我們應該把它們帶走,因為它們沒有運行。

不屬于自己的條件

我們應該將條件語句分成自己的一行,以便我們可以更輕松地閱讀它們。

所以不用寫:

if (foo) {   //... } if (bar) {   //... }

我們寫:

if (foo) {   //... } if (bar) {   //... }

注釋可選參數

可選參數在JavaScript中應具有默認值。 例如,我們可以編寫以下代碼來指示參數是可選的:

const foo = (a = 1) => {   //... }

JavaScript中怎樣避免編寫不良代碼

> Photo by Samantha Gades on Unsplash

當心"死存儲"

死存儲是指我們為變量分配值,但不使用原始值就重新分配了值。

因此,我們實際上并不需要原始值,因此可以刪除該行。

所以不用寫:

let x = 1; x = 8 * 10;

我們寫:

let x = 8 * 10;

不要反轉我們的布爾值

雙否定總是比直接條件表達式更難讀。

因此,我們應該以更直接的方式編寫是可能的。 例如,而不是寫:

if (!(x > 10)) {    //... }

我們寫:

if (x <= 10) {    //... }

如我們所見,第二條if語句比第一條if語句更易于閱讀,并且更短。 他們都是一樣的。

使用模板字符串

模板字符串是最好的JavaScript字符串。 我們可以在其中插入表達式,而其他任何類型的字符串都無法做到。

另外,我們可以通過在字符串中輸入換行符來創建多行字符串。

由于反引號用作模板字符串的定界符,因此可以在字符串內部使用引號而不轉義它們。

模板字符串很棒。 它們使我們可以做更多舊式弦弦無法完成的事情。

要向不完整的庫類添加更多方法,我們可以使用Object.assign向它們添加自己的方法。

另外,我們需要封裝數據類,以使您的代碼不會與數據類緊密耦合。

上述就是小編為大家分享的JavaScript中怎樣避免編寫不良代碼了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

伊宁市| 阳朔县| 尤溪县| 壶关县| 梅河口市| 巫溪县| 巴南区| 临颍县| 禹城市| 五原县| 和静县| 广水市| 怀安县| 临桂县| 朝阳区| 宜春市| 榆中县| 金乡县| 遵化市| 石家庄市| 铜梁县| 乡城县| 于田县| 繁峙县| 磐安县| 汝州市| 永泰县| 汝阳县| 克什克腾旗| 盈江县| 博罗县| 江陵县| 乡宁县| 房山区| 汶川县| 绩溪县| 保德县| 重庆市| 固始县| 长治市| 封丘县|