2009-06-04 27 views
2

在查找jQuery示例時,我發現作者傾向於使用'或'來包含選擇器。javascript格式化意見:'vs'

如:。

$( '#標籤')點擊......

$( 「#標籤」)點擊

這是一個個人風格事情,還是有一個原因,爲什麼一個比另一個更好?

在我短暫的經歷中,我發現'輸入速度更快。 。此外,建立JSON參數是'因爲你很容易逃脫「的字符串容易

回答

5

我用'Javascript的字符串爲主。推理是「屬性值的絕大多數HTML/XML標記的使用。某些屬性包含Javascript的onclick。其中一些javascript包含字符串文字。因此,這些字符串文字最好用'分隔。出於這個原因,我保持所有的Javascript一致,並使用'我可以。

+0

+1正是我的推理,但我也喜歡Alex的反像素立場:) – annakata 2009-06-04 15:31:38

+0

+1雖然我只保留XML和HTML的簡單引號。由於我使用其他語言,因此我傾向於保持一致併爲字符串使用雙引號。 – 2009-06-04 15:39:02

2

python提供完全一樣的選擇(單或雙引號是等同的),我的喜好,像你這樣的,是單引號 - 「更少的像素」(不太雜亂外觀)是我如何理順它;-)。唯一的例外是代碼,必須含有大量的單引號的字符串(名稱,如"O'Brian"或者,更現實,SQL查詢字符串,如"SELECT foo FROM bar WHERE baz='zapzap'") 。

+2

嗯,SQL語句在JS?你嚇到我了,先生。 – annakata 2009-06-04 15:32:20

+0

Alex正在談論他的Python體驗。 – 2009-06-04 15:38:02

1

爲了與我使用「字符串Java約定一致,」爲字符(字符串,長度爲1)。

1

我已經習慣了在PHP中的大部分時間打字單引號。應該是因爲快它不必分析單引號中包含的變量,而且它更容易輸入,並且看起來更「乾淨」。因此,在編寫JS時採用了單引號用法,並且據我所知,它只是一種樣式

0

使用「而不是」的一個好理由是,如果你有一個包含'你可以使用'的字符串字面值來避免使用轉義字符。

0

但從別人誰偶爾使用一種語言編寫的另一個代碼的角度來看,使用單引號是優選的。例如,當我使用VB6驅動Octave或Agena(正如我昨天所做的那樣)時,我必須使用加倍的雙引號來避免單個雙引號。例如,

T "CACos", CACos(CReset(-P_I, 2)), CParse(script("octave", str.Subst("printf(""%s"",num2str(acos(complex([1],[2]))));", -P_I, 2))) 

如果我開着Javascript,我會使用單引號選項。

2

對於Javascript,它只是首選項 - 字符串的處理方式與其他語言(如PHP)不同。通常情況下,你選擇一個你不會逃脫的人。

然而,JSON是不同的。重要的是要記住,JSON與Javascript沒有100%的同等性 - 它是JavaScript的一個子集,其格式更加嚴格和有限。

而且according to the spec,你分隔字符串用雙引號。

這意味着,

{ foo : 'bar' } 

是有效的JavaScript,但不是有效的JSON。上述對象的有效JSON是這樣的

{ "foo" : "bar" }