020_字符串
1. JavaScript字符串用于存儲和操作文本。
2. JavaScript字符串是引號中的零個或多個Unicode字符。
var x = ""; var y = "Bill Gates";3. 您能夠使用單引號或雙引號:
var x = "It's good to see you again!"; var y = 'He is called "Bill"';5. 字符串中每個字符都有特定的位置, 首字符從位置0開始, 第二個字符在位置1, 依此類推。這意味著字符串中的最后一個字符的位置一定是字符串的長度減1:
6. 轉義字符
6.1. 轉義字符(\)也可用于在字符串中插入其他特殊字符:
6.2. 轉義字符(\)把特殊字符轉換為字符串字符:
6.3. 例子
6.3.1. 代碼
<!DOCTYPE html> <html><head><meta charset="utf-8" /><title>轉義字符</title></head><body><script type="text/javascript">var china1 = "中國是瓷器的故鄉, \r因此\'china\'與\"China\"(中國)同名。"document.write('\\r 回車');document.write('<pre>china1 = ' + china1 + '</pre>');var china2 = "中國是瓷器的故鄉, \n因此\'china\'與\"China\"(中國)同名。"document.write('\\n 換行');document.write('<pre>china2 = ' + china2 + '</pre>');var china3 = "中國是瓷器的故鄉, 因\t此\'china\'與\"China\"(中\t國)同名。"document.write('\\t 制表符');document.write('<pre>china3 = ' + china3 + '</pre>');var china4 = "中國是瓷器的故鄉, 因\b此\'china\'與\"China\"(中\b國)同名。"document.write('\\b 空格');document.write('<pre>china4 = ' + china4 + '</pre>');var china5 = "中國是瓷器的故鄉, \x0D因此\'china\'與\"China\"(中國)同名。"document.write('\\x0D 回車');document.write('<pre>china5 = ' + china5 + '</pre>');var china6 = "中國是瓷器的故鄉, \x0A因此\'china\'與\"China\"(中國)同名。"document.write('\\x0A 換行');document.write('<pre>china6 = ' + china6 + '</pre>');var china7 = "中國是瓷器的故鄉, 因此\'chi\x09na\'與\"Chi\x09na\"(中國)同名。"document.write('\\x09 制表符');document.write('<pre>china7 = ' + china7 + '</pre>');var china8 = "中國是瓷器的故鄉, 因此\'chi\x20na\'與\"Chi\x20na\"(中國)同名。"document.write('\\x20 空格');document.write('<pre>china8 = ' + china8 + '</pre>');document.write('八進制\\0nn表示的所有可顯示字符<br />');document.write('\041\040\042\043\044\045\046\047\050\051\052\053\054\055\056\057\060\061\062\063\064\065\066\067\070\071\072\073\074\075\076\077');document.write('<br />十六進制\\xnn表示的所有可顯示字符(跟ISO-8859-1較低和較高部分符號實體對應)<br />');document.write('\x21\x20\x22\x23\x24\x25\x26\x27\x28\x29\x2A\x2B\x2C\x2D\x2E\x2F\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3A\x3B\x3C\x3D\x3E\x3F');document.write('\x40\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4A\x4B\x4C\x4D\x4E\x4F\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5A\x5B\x5C\x5D\x5E\x5F');document.write('\x60\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6A\x6B\x6C\x6D\x6E\x6F\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7A\x7B\x7C\x7D\x7E\xA1');document.write('\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1');document.write('\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1');document.write('\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF');document.write('<br />十六進制\\unnnn表示的部分Unicode字符<br />');document.write('\u0021\u0020\u0022\u0023\u0024\u0025\u0026\u0027\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F\u0030\u0031\u0032\u0033\u0034\u0035');document.write('\u0036\u0037\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047\u0048\u0049\u004A\u004B');document.write('\u004C\u004D\u004E\u004F\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057\u0058\u0059\u005A\u005B\u005C\u005D\u005E\u005F\u0060\u0061');document.write('\u0062\u0063\u0064\u0065\u0066\u0067\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077');document.write('\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF');document.write('\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5');document.write('\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA\u00DB');document.write('\u00DC\u00DD\u00DE\u00DF\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF\u00F0\u00F1');document.write('\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u00FE\u00FF\u0100\u0101\u0102\u0103\u0104\u0105\u0106\u0107');</script></body> </html>6.3.2. 效果圖
7. 字符串長度
7.1. length屬性返回字符串的長度。
7.2. 例子
7.2.1. 代碼
<!DOCTYPE html> <html><head><meta charset="utf-8" /><title>字符串長度</title></head><body><script type="text/javascript">var china = "中國是瓷器的故鄉, 因此'china'與'China(中國)'同名。"document.write(china);document.write('<br /><b>上面的字符串一共有: ' + china.length + '個字符。</b>');</script></body> </html>7.2.2. 效果圖
8. 回車與換行的區別
8.1. 由來
?8.1.1. 在計算機還沒有出現之前, 有一種叫做電傳打字機的機械, 每秒鐘可以打10個字符。但是它有一個問題, 就是打完一行換行的時候, 要用去0.2秒, 正好可以打兩個字符。要是在這0.2秒里面, 又有新的字符傳過來, 那么這個字符將丟失。
?8.1.2. 于是, 研制人員想了個辦法解決這個問題, 就是在每行后面加兩個表示結束的字符。一個叫做"回車", 告訴打字機把打印頭定位在左邊界, 不卷動滾筒; 另一個叫做"換行", 告訴打字機把滾筒卷一格, 不改變水平位置。這就是"換行"和"回車"的由來。
8.2. 使用
?8.2.1. 后來計算機被發明了, 這兩個概念也就被般到了計算機上。那時, 存儲器很貴, 一些科學家認為在每行結尾加兩個字符太浪費了, 加一個就可以。于是, 就出現了分歧。
?8.2.2. 回車\r本義是光標重新回到本行開頭, r的英文return, 控制字符可以寫成CR, 即Carriage Return。
?8.2.3. 換行\n本義是光標往下一行(不一定到下一行行首), n的英文newline, 控制字符可以寫成LF, 即Line Feed。
?8.2.4. 在不同的操作系統這幾個字符表現不同, 比如在Windows系統下, 這兩個字符就是表現的本義; 在Unix類系統, 換行\n就表現為光標下一行并回到行首; 在Mac上, \r就表現為回到本行開頭并往下一行。至于Enter鍵的定義是與操作系統有關的, 通常用的Enter是兩個加起來。
?8.2.5. 不同操作系統下的含義:
- \n: Unix系統行末結束符
- \r\n: Windows系統行末結束符
- \r: Mac系統行末結束符
?8.2.6. 我們經常遇到的一個問題就是, Unix/Mac系統下的文件在Windows里打開的話, 所有文字會變成一行; 而Windows里的文件在Unix/Mac下打開的話, 在每行的結尾可能會多出一個符號。
8.3. 軟回車和硬回車
?8.3.1. 硬回車就是普通我們按回車產生的, 它在換行的同時也起著段落分隔的作用。
?8.3.2. 軟回車是用Shift + Enter產生的, 它換行, 但是并不換段, 即前后兩段文字在Word中屬于同一段。
?8.3.3. 硬回車的html代碼是<p>..</p>, 段落的內容就夾在里面; 而軟回車的代碼是<br />。網頁的文字如果復制到word中, 則硬回車變為彎曲的箭頭, 軟回車變為向下的箭頭。
總結