2015-12-17 29 views
-6

我學習JavaScript和跨越這個偉大的嘖嘖傳來:標題下爲什麼這個嵌套的作用域範例中的額外符號?

http://eloquentjavascript.net/03_functions.html

首屆例如「嵌套範圍」文本生成文本畫山:

我不明白正因爲如此,第11行有一個「\」 時只產生一個「\」

請您解釋適合傻瓜 - 我花了上提升了教訓,遵循這一代碼多次通過調試我之前瞭解它! :)

謝謝!

+0

它需要轉義反斜槓 – brandelizer

回答

3

在許多語言中反斜槓「逃逸」字符。通過「逃避」,我的意思是他們從他們的特殊含義剝離他們,留下他們一個普通的字符。所以當你想要一個簡單的反斜槓時,你必須逃避它來防止它逃脫其他的東西。

0

這是代碼塊,該問題是關於:

var mountain = function(size) { 
    result += "/"; 
    for (var count = 0; count < size; count++) 
     result += "'"; 
    result += "\\"; 
    }; 

// mountain(4); outputs -> /''''\ 

在JavaScript符號\用於轉義內字符串中的特殊字符(比如換行符\n)。

所以,只有一個\創建的時候,必須逃出逃生

因此在result += "\\";的雙。

+0

Aaaah謝謝! :)如果我想打印其中兩個(\\)會怎麼樣? - 我已經嘗試了好奇心,並得到一個錯誤... – sca

+0

然後\\\\這將逃脫2. –

+0

謝謝!這是我在stackoverflow上的第一個問題,它投票了6次:/如果有人可以給我任何提示,我做錯了什麼,這將是很好的... ... – sca

相關問題