2011-08-31 51 views
2

可能重複:
When to Use Double or Single Quotes in JavaScript是否有理由使用單引號而不是Javascript中的雙引號?

在Javascript中,您既可以使用雙引號或字串,單引號,這意味着同樣的事情:

var a = 'hello'; 
var b = "hello"; 
alert(a === b); //alerts true 

我正在閱讀一些Douglas Crockford's code,看起來他通常使用單引號圍繞字符串文字。

此外,在這裏回答Javascript問題的大部分高級代表似乎都在字符串周圍使用單引號(example)。

由於我通常在字符串周圍使用雙引號(大多隻是出於習慣),我開始對我在這裏給出的使用雙引號的所有答案感到不自在。我沒有聽說過爲什麼應該使用一個,因爲,據我所知,它們是可以互換的。

爲什麼所有的Javascript忍者都使用單引號是否有原因?我是否也應該使用單引號?如果我繼續使用雙引號,會不會有一些意想不到的致命後果?

+3

我認爲要考慮的最重要的事情是保持一致。 – pimvdb

回答

0

我相信這是一個主要的文體選擇,但是當涉及報價或字符串轉義時,它可能會影響您的字符串。

總體而言,確保您選擇的方法一致。

0

你可以選擇其中任何一個,主要是要保持一致。

它們可以互換但大多數languges使用,如C#"需要進行轉義然而'不那麼它稍微簡單使用'

1

字符串理想地雙引號括起來。有些情況下,你想使用單引號,當你包裝具有在其中雙引號喜歡文字的情況:

var txt = 'This "should" be escaped'; 

沒有單引號,你需要逃脫雙引號,這使得它們有點難看(儘管品味)。

如果你在ASP.Net世界中,通常爲了解決DataBinder表達式的問題,你可以用單引號包裝字符串。

另外我發現單引號更容易輸入。

另一個地方,你必須使用雙引號是構建JSON對象:

var obj = { "a": 1 }; // valid 
var obj = { 'a': 1 }; // invalid 

無論哪種方式,是一致的是最重要的。在整個代碼中選擇一種風格並遵守它(除非遇到轉義問題)。

+0

但是,如果您在字符串內部使用單引號,則您與單引號的問題相同。例如。帶撇號。 –

+1

賓果!現在你知道何時使用雙引號! :) – Mrchief

+0

「理想情況下,字符串用雙引號括起來。」 - 我認爲這是一個意見問題。就JavaScript而言,我更喜歡單引號,因爲我贊成HTML的雙引號,而且兩者經常一起使用。 – MrWhite

相關問題