一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - js教程 - 聊聊JavaScript 命名約定優(yōu)秀實踐

聊聊JavaScript 命名約定優(yōu)秀實踐

2022-02-23 22:25前端充電寶CUGGZ js教程

在開發(fā)過程中,遵循標準的命名約定可以提高代碼的可讀性。下面就來看看 JavaScript 中命名約定的最佳實踐。

在開發(fā)過程中,遵循標準的命名約定可以提高代碼的可讀性。下面就來看看 JavaScript 中命名約定的最佳實踐。

1. 變量的命名約定

JavaScript 變量名稱是區(qū)分大小寫的,大寫和小寫字母是不同的。比如:

let DogName = 'Scooby-Doo'; let dogName = 'Droopy'; let DOGNAME = 'Odie'; console.log(DogName); // "Scooby-Doo" console.log(dogName); // "Droopy" console.log(DOGNAME); // "Odie"

但是,最推薦的聲明 JavaScript 變量的方法是使用駝峰式變量名。我們可以對JavaScript 所有類型的變量使用駝峰式命名約定,這樣就不會相同命名的變量。

// bad let dogname = 'Droopy'; // bad let dog_name = 'Droopy'; // bad let DOGNAME = 'Droopy'; // bad let DOG_NAME = 'Droopy'; // good let dogName = 'Droopy';

變量的名稱應該是不言自明的,并描述了儲存的值。例如,如果需要一個變量來儲存狗的名字,應該使用 dogName 而不是 Name,因為 dogNam 更有意義:

// bad let d = 'Droopy'; // bad let name = 'Droopy'; // good let dogName = 'Droopy';

2. 布爾值的命名約定

當定義布爾類型的變量時,應該使用is或者has作為變量的前綴。例如,如果需要一個變量來檢查狗是否有主人,應該使用 hasOwner 作為變量名:

// bad let bark = false; // good let isBark = false; // bad let ideal = true; // good let areIdeal = true; // bad let owner = true; // good let hasOwner = true;

3. 函數(shù)的命名約定

JavaScript 中函數(shù)的名稱也是區(qū)分大小寫的。因為在聲明函數(shù)時,推薦使用駝峰式方法來命名函數(shù)。

除此之外,推薦使用描述性名詞和動詞來作為前綴。例如,如果聲明一個函數(shù)來獲取名稱,則函數(shù)名字應該是 getName:

// bad function name(dogName, ownerName) { return '${dogName} ${ownerName}';
} // good function getName(dogName, ownerName) { return '${dogName} ${ownerName}';
}

4. 常量的命名約定

JavaScript 中的常量和變量是一樣的,都區(qū)分大小寫,在定義常量時,推薦使用大寫,因為它們是不變的變量。

const LEG = 4; const TAIL = 1; const MOVABLE = LEG + TAIL;

如果變量聲明名稱中包含多個單詞,就應該使用 UPPER_SNAKE_CASE。

const DAYS_UNTIL_TOMORROW = 1;

5. 類的命名約定

JavaScript 中類的命名約定規(guī)則與函數(shù)非常相似,推薦使用描述性的名稱來描述類的功能。

函數(shù)名和類名之間的主要區(qū)別在于類名要使用大寫開頭:

class DogCartoon { constructor(dogName, ownerName) { this.dogName = dogName; this.ownerName = ownerName; 
  }
} const cartoon = new DogCartoon('Scooby-Doo', 'Shaggy');

6. 組件的命名規(guī)則

JavaScript 組件廣泛應用于React、Vue等前端框架中。組件的命名建議與類保持一致,使用開頭大寫的駝峰式命名法:

// bad function dogCartoon(roles) { return ( <div> <span> Dog Name: { roles.dogName } span> <span> Owner Name: { roles.ownerName } span> div> );
} // good function DogCartoon(roles) { return ( <div> <span> Dog Name: { roles.dogName } span> <span> Owner Name: { roles.ownerName } span> div> );
}

由于組件的命名開頭字母是大寫,因此在使用時,就很容易和HTML、屬性值等區(qū)分開來:

<div> <DogCartoon roles={{ dogName: 'Scooby-Doo', ownerName: 'Shaggy' }} /> div>

7. 方法的命名約定

這里說的方法指的是類中方法,在 JavaScript 中,類的方法和函數(shù)的結(jié)構(gòu)是非常類似的,因此,命名約定規(guī)則也是一樣的。

推薦需要使用駝峰式方法來聲明 JavaScript 方法,并使用動詞作為前綴,使方法名稱更有意義:

class DogCartoon { constructor(dogName, ownerName) { this.dogName = dogName; this.ownerName = ownerName; 
  } getName() { return '${this.dogName} ${this.ownerName}'; 
  }
} const cartoon= new DogCartoon('Scooby-Doo', 'Shaggy'); console.log(cartoon.getName()); // "Scooby-Doo Shaggy"

8. 私有函數(shù)的命名約定

下劃線 (_) 在 MySQL 和 PHP 等語言中廣泛用于定義變量、函數(shù)和方法。但在 JavaScript 中,下劃線用于表示私有變量或函數(shù)。

例如,有一個私有函數(shù)名 toonName,則可以通過添加下劃線作為前綴 (_toonName) 來將其表示為私有函數(shù)。

class DogCartoon { constructor(dogName, ownerName) { this.dogName = dogName; this.ownerName = ownerName; this.name = _toonName(dogName, ownerName); 
  } _toonName(dogName, ownerName) { return `${dogName} ${ownerName}`; 
  } 
} const cartoon = new DodCartoon('Scooby-Doo', 'Shaggy'); // good const name = cartoon.name; console.log(name); // "Scooby-Doo Shaggy"  // bad name =cartoon._toonName(cartoon.dogName, cartoon.ownerName); console.log(name); // "Scooby-Doo Shaggy"

9. 全局變量的命名約定

對于 JavaScript 全局變量,沒有特定的命名標準。建議對可變?nèi)肿兞渴褂民劮迨酱笮懙姆绞剑瑢Σ豢勺內(nèi)謱ο笫褂么髮憽?/p>

10. 文件名的命名約定

大多數(shù) Web 服務器(Apache、Unix)在處理文件時都區(qū)分大小寫。例如,flower.jpg 和 Flower.jpg 是不一樣的。

但是,如果從不區(qū)分大小寫的服務器切換到區(qū)分大小寫的服務器,即使是一個小錯誤也可能導致網(wǎng)站崩潰。

因此,盡管它們是支持區(qū)分大小寫的,建議在所有服務器中還是使用小寫來命名文件。

原文地址:https://mp.weixin.qq.com/s/4Nr5Y-ngFVqw__J_yE_mkw

延伸 · 閱讀

精彩推薦
  • js教程uniapp微信小程序:key失效的解決方法

    uniapp微信小程序:key失效的解決方法

    這篇文章主要介紹了uniapp微信小程序:key失效的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友...

    灬都是個謎11132022-01-05
  • js教程JavaScript的一些小技巧分享

    JavaScript的一些小技巧分享

    這篇文章主要介紹了JavaScript的一些小技巧分享,幫助大家更好的理解和使用JavaScript,感興趣的朋友可以了解下...

    小蘑菇9292021-12-27
  • js教程在JavaScript中查找字符串中最長單詞的三種方法(推薦)

    在JavaScript中查找字符串中最長單詞的三種方法(推薦)

    這篇文章主要介紹了在JavaScript中查找字符串中最長單詞的三種方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋...

    Hunter網(wǎng)絡安全7352022-01-04
  • js教程js實現(xiàn)簡單圖片拖拽效果

    js實現(xiàn)簡單圖片拖拽效果

    這篇文章主要為大家詳細介紹了js實現(xiàn)簡單圖片拖拽效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    qq_448013368912022-01-22
  • js教程原生JavaScript實現(xiàn)隨機點名表

    原生JavaScript實現(xiàn)隨機點名表

    這篇文章主要為大家詳細介紹了原生JavaScript實現(xiàn)隨機點名表,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    棟棟很優(yōu)秀啊9862021-12-31
  • js教程javascript實現(xiàn)簡單頁面倒計時

    javascript實現(xiàn)簡單頁面倒計時

    這篇文章主要為大家詳細介紹了javascript實現(xiàn)簡單頁面倒計時,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    潛力股wjk11982022-01-25
  • js教程微信小程序?qū)崿F(xiàn)文字滾動

    微信小程序?qū)崿F(xiàn)文字滾動

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)文字滾動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    huangzhin4292022-02-19
  • js教程JavaScript實現(xiàn)手風琴效果

    JavaScript實現(xiàn)手風琴效果

    這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)手風琴效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    ~噓~禁止想象~5032022-01-20
主站蜘蛛池模板: 亚洲国产精品自在在线观看 | 小苹果日本在线观看 | 嫩草蜜桃| 99久久国产综合精品女不卡 | 国产精品怡红院在线观看 | 99精品国产在现线免费 | 欧美在线视频一区二区 | 精品一区二区三区免费毛片 | 国产麻豆剧果冻传媒观看免费视频 | 国产午夜免费秋霞影院 | 精品国产免费久久久久久婷婷 | 亚洲不卡视频在线观看 | 91寡妇天天综合久久影院 | 国产免费看黄的私人影院 | 日本人欧美xx | 国产午夜精品久久久久 | 天天干狠狠操 | hd性欧美俱乐部中文 | 国产网站免费看 | 免费看男女做好爽好硬视频 | 性欧美xxxxx护士另类 | 国产一级毛片外aaaa | 脱jk裙的美女露小内内无遮挡 | 欧美丰满大乳大屁在线观看股 | 幸福草电视剧演员表介绍 | 娇小异类videos | 无人视频在线观看完整版高清 | 亚洲系列国产系列 | 青青热久免费精品视频精品 | 秋霞啪啪片 | 国产视频三区 | 日本sss| 亚洲国产区中文在线观看 | 国产精品短视频 | 日本伦理动漫在线观看 | 国产一卡2卡3卡四卡国色天香 | 精品国产自在现线拍国语 | 日本不卡不码高清免费观看 | 国产-第1页-草草影院 | 91一个人的在线观看www | 高清欧美不卡一区二区三区 |