哪些字符對JavaScript變量名稱有效?

哪些字符可用於命名JavaScript變量? 正則表達式

我想爲個人非JavaScript用戶建立一個小型的「擴展庫」,以供他們在工做時使用(語言方面彷佛全部人都很陌生)。 我喜歡jQuery和Prototype都使用$符號,而且因爲我使用jQuery,所以我正在尋找另外一個好用的單字符符號。 瀏覽器

我意識到我能夠測試一些字符,可是我但願縮小字符列表的範圍(考慮到未來與另外一個流行的庫的集成)。 安全


#1樓

這是建立變量名稱的快速建議。 若是您但願變量在FireFox中使用時不衝突, 請不要使用變量名「 _content 」,由於瀏覽器已在使用此變量名。 我發現這很困難,所以不得不更改在大型JavaScript應用程序中使用變量「 _content」的全部位置。 函數


#2樓

基本上,以正則表達式形式: [a-zA-Z_$][0-9a-zA-Z_$]* 。 換句話說,第一個字符能夠是字母或_或$,其餘字符能夠是字母或_或$或數字。 測試

注意:儘管其餘答案都指出您能夠在JavaScript標識符中使用Unicode字符,但實際的問題是「對於jQuery之類的擴展庫,我應該使用哪些字符?」 這是對這個問題的答案。 您能夠在標識符中使用Unicode字符,但不要這樣作。 編碼一直被搞砸。 將您的公共標識符保持在安全的32-126 ASCII範圍內。 編碼


#3樓

Javascript變量 spa

您可使用任何字母, $_字符開頭變量。 只要它不是以數字開頭,就能夠包含數字。 code

開始: [az], $, _ ip

包含: [az], [0-9], $, _ unicode

jQuery的

您能夠在庫中使用_ ,使其與jQuery並列。 可是,您能夠設置一個配置,以使jQuery不使用$ 。 相反,它將使用jQuery 。 爲此,只需設置:

jQuery.noConflict();

此頁面說明了如何執行此操做。


#4樓

Javascript變量能夠包含字母,數字,美圓符號($)和下劃線(_)。 他們不能以數字開頭。

一般,庫使用$_做爲您將在各處使用的函數的快捷方式。 儘管$_名稱沒有意義,但它們的縮寫卻頗有用,而且因爲您將在全部但願使用該函數的地方都知道它們的含義。

若是您的庫不是要在每一個地方都使用一個函數,那麼我建議您使用更有意義的名稱,由於這些名稱將幫助您和其餘人理解您的代碼在作什麼,而沒必要損害源代碼的優美性

例如,您能夠看看很棒的DateJS庫和它容許的語法糖,而無需任何符號短名稱變量。

您應該首先使代碼實用,而且只有在嘗試使其變得漂亮以後才能使用。


#5樓

實際上,ECMAScript在第15頁上說:標識符能夠以$,下劃線或UnicodeLetter開頭,而後繼續(剛好在其下)指定UnicodeLetter能夠是Unicode分類中的任何字符,Lo,Ll。 ,Lu,Lt,Lm和Nl。 當您查找這些類別時,您會發現這不只提供了拉丁字母,並且還提供了更多的可能性。 只需在Google中搜索「 unicode類別」,便可找到它們。

相關文章
相關標籤/搜索