中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

JavaScript中的變量命名規范是什么

發布時間:2022-12-13 09:12:47 來源:億速云 閱讀:136 作者:iii 欄目:開發技術

這篇文章主要介紹“JavaScript中的變量命名規范是什么”,在日常操作中,相信很多人在JavaScript中的變量命名規范是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”JavaScript中的變量命名規范是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

駝峰命名

首先,和其他語言一樣,大部分變量建議采用駝峰命名法。

var articleTitle = 'javascript變量命名規范'

而對于常量,使用大寫字母和下劃線來組合命名。

const COUNTRY_NAME = 'China'

根據變量類型來命名

普通變量/屬性

盡量用簡單易懂的 名詞 結尾,前面可以加 形容詞/名詞 來修飾。

var person = {
    name: 'Frank'
}
var student = {
    grade: 3,
    class: 2
}
var juniorSchoolStudent = {}

布爾變量/屬性

一般用 形容詞be動詞 、情態動詞has 開頭

var person = {
    alive: false, // 如果是形容詞,前面就沒必要加is,比如isAlive就顯得冗余
    canSpeak: true, //情態動詞有can、should、will、need等,情態動詞后面接動詞
    isVip: true, // be動詞有is、was等,后面一般接名詞
    hasChildren: true, // has加名詞
}

控制元素的顯示隱藏、是否加載的時候,可以用 showhideload 開頭

var dialog = {
    showTitle: true, // 又例如vue框架中,v-show="showTitle"
    hideHeader: false, // 又例如angular框架中,ng-hide="hideHeader"
    loadFooter: true, // 又例如vue框架中,v-if="loadFooter"
}

普通函數/方法

一般用 動詞 開頭。如果是及物動詞后面可以加名詞,組成 動賓結構

var person = {
    run(){}, // 不及物動詞
    drinkWater(){}, // 及物動詞
    eat(foo){}, // 及物動詞加參數(參數是名詞)
}

名稱也可以體現參數:

document.getElementById('domId')
function findArticleByName(articleName) {}

回調、鉤子函數

用 介詞 開頭,或用 動詞的現在完成時態

button.addEventListener('click', onButtonClick)
var component = {
    beforeCreate(){},
    created(){},
    beforeMount(){},
    mounted(){},
    beforeUpdate(){},
    updated(){},
    activated(){},
    deactivated(){},
    beforeDestroy(){},
    destroyed(){}
}

類名/構造函數的名稱,要采用Pascal命名法(即駝峰命名法+首字母大寫)。

class MyArticle {}
 
function Person (name) {
    this.name = name
}

私有屬性和方法的前綴加下劃線_, 公共屬性和方法則不用

class Person {
    // 私有屬性 
    _name;

    // 公共方法
    getName() {
        return this._name;
    }
    // 公共方法
    setName(name) {
        this._name = name;
    }
}

注意一致性

介詞一致性

例如在上述鉤子函數的命名規范中,

  • 如果你使用了 before + after,那么就在代碼的所有地方都堅持使用;

  • 如果你使用了 before + 完成時,那么就堅持使用;

  • 如果你改來改去,就 不一致 了,不一致將導致 不可預測

再例如使用了 onButtonClick,就不要在其他地方使用 handleButtonClick。

順序一致性

比如同時命名了兩個變量: updateContainerWidth 和 updateHeightOfContainer ,

這個順序就令人很別扭,同樣會引發 不可預測

表里一致性

函數名應盡可能完美體現函數的功能,既不能多也不能少。

比如

function getSongs(){
    return $.get('/songs).then((response){
        div.innerText = response.songs
    })
}

就違背了表里一致性,getSongs 表示獲取歌曲,并沒有暗示這個函數會更新頁面,但是實際上函數更新了 div,這就是表里不一,正確的寫法是

要么糾正函數名

function getSongsAndUpdateDiv(){
    return $.get('/songs).then((response){
        div.innerText = response.songs
    })
}

要么寫成兩個函數

function getSongs(){
    return $.get('/songs)
}
function updateDiv(songs){
    div.innerText = response.songs
}
getSongs().then((response)=>{
    updateDiv(response.songs)
})

時間一致性

有可能隨著代碼的變遷,一個變量的含義已經不同于它一開始的含義了,這時就需要及時改掉這個變量的名字。
這一條是最難做到的,因為寫代碼容易,改代碼難。如果這個代碼組織得不好,很可能會出現牽一發而動全身的情況(如全局變量就很難改)。
所以最好的做法,就是一開始就做好規劃、并且按照規范來組織代碼。

其他注意事項

避免使用不常用的縮寫

除了一些常用的所有程序員都知道的縮寫(例如 num、html),建議不要使用縮寫。

比如

  • password 不要縮寫為 psw,

  • table 不要縮寫為 tb、tbl

  • current 不要縮寫為 cur

更不要使用拼音首字母縮寫。

比如

  • 萬元戶 不要縮寫為 wyh

  • 中資公司 不要縮寫為 zzgs

這些縮寫其實沒少幾個字符,卻讓看代碼的人增加了很多理解的負擔。

避免使用容易混淆的字母和數字

比如

  • 同時用 l 和 1: level1

  • 同時用 O 和 0: 0Option

避免變量命名過于抽象

比如

var flag = false; // 可以改成更有實際含義的 isValid、 hasPermission
var obj = {}; // 可以改成更有實際含義的 currentTask、 newItem

到此,關于“JavaScript中的變量命名規范是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

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

AI

克什克腾旗| 太原市| 仲巴县| 津市市| 镇宁| 黎平县| 句容市| 静乐县| 阿尔山市| 读书| 晴隆县| 浠水县| 河西区| 广东省| 房产| 灌阳县| 漠河县| 隆林| 金山区| 西安市| 太谷县| 永新县| 黔江区| 岐山县| 青河县| 贡山| 扬中市| 海盐县| 龙岩市| 治县。| 边坝县| 福泉市| 阳信县| 章丘市| 如东县| 台安县| 太仆寺旗| 张北县| 仪陇县| 鹿邑县| 昌图县|