JavaScript 字符串用于存儲和處理文本。
JavaScript 字符串
字符串可以存儲一系列字符觉渴,如 "John Doe"徽惋。
字符串可以是插入到引號中的任何字符。你可以使用單引號或雙引號:
var carname = "Volvo XC60";
var carname = 'Volvo XC60';
可以使用索引位置來訪問字符串中的每個(gè)字符:
var character = carname[7];
字符串的索引從 0 開始寂曹,這意味著第一個(gè)字符索引值為 [0],第二個(gè)為 [1].
字符串中的引號不要與字符串的引號相同。
可以在字符串添加轉(zhuǎn)義字符來使用引號:
var x = 'It's alright';
var y = "He is called "Johnny"";
字符串長度
可以使用內(nèi)置屬性 length 來計(jì)算字符串的長度:
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
特殊字符
反斜杠是一個(gè)轉(zhuǎn)義字符漱挚。 轉(zhuǎn)義字符將特殊字符轉(zhuǎn)換為字符串字符:
轉(zhuǎn)義字符 () 可以用于轉(zhuǎn)義撇號渺氧,換行,引號白华,等其他特殊字符贩耐。
' 單引號
" 雙引號
\ 反斜杠
\n 換行
\r 回車
\t tab(制表符)
\b 退格符
\f 換頁符
字符串可以是對象
通常, JavaScript 字符串是原始值潮太,可以使用字符創(chuàng)建: var firstName = "John"
但我們也可以使用 new 關(guān)鍵字將字符串定義為一個(gè)對象: var firstName = new String("John")
<body>
<p id="demo"></p>
<script>
var x = "John"; // x是一個(gè)字符串
var y = new String("John"); // y是一個(gè)對象
document.getElementById("demo").innerHTML =typeof x + " " + typeof y;
</script>
</body>
不要創(chuàng)建 String 對象虾攻。它會拖慢執(zhí)行速度更鲁,并可能產(chǎn)生其他副作用
=== 為絕對相等,即數(shù)據(jù)類型與值都必須相等漂坏。
字符串屬性和方法
原始值字符串媒至,如 "John", 沒有屬性和方法(因?yàn)樗麄儾皇菍ο?。
原始值可以使用 JavaScript 的屬性和方法塘慕,因?yàn)?JavaScript 在執(zhí)行方法和屬性時(shí)可以把原始值當(dāng)作對象。
字符串屬性
屬性 描述
constructor 返回創(chuàng)建字符串屬性的函數(shù)
length 返回字符串的長度
prototype 允許您向?qū)ο筇砑訉傩院头椒?br>
字符串方法
charAt() 返回指定索引位置的字符
charCodeAt() 返回指定索引位置字符的 Unicode 值
concat() 連接兩個(gè)或多個(gè)字符串,返回連接后的字符串
fromCharCode() 將 Unicode 轉(zhuǎn)換為字符串
indexOf() 返回字符串中檢索指定字符第一次出現(xiàn)的位置
lastIndexOf() 返回字符串中檢索指定字符最后一次出現(xiàn)的位置
localeCompare() 用本地特定的順序來比較兩個(gè)字符串
match() 找到一個(gè)或多個(gè)正則表達(dá)式的匹配
replace() 替換與正則表達(dá)式匹配的子串
search() 檢索與正則表達(dá)式相匹配的值
slice() 提取字符串的片斷蛤织,并在新的字符串中返回被提取的部分
split() 把字符串分割為子字符串?dāng)?shù)組
substr() 從起始索引號提取字符串中指定數(shù)目的字符
substring() 提取字符串中兩個(gè)指定的索引號之間的字符
toLocaleLowerCase() 根據(jù)主機(jī)的語言環(huán)境把字符串轉(zhuǎn)換為小寫鸿染,只有幾種語言(如土耳其語)具有地方特有的大小寫映射
toLocaleUpperCase() 根據(jù)主機(jī)的語言環(huán)境把字符串轉(zhuǎn)換為大寫,只有幾種語言(如土耳其語)具有地方特有的大小寫映射
toLowerCase() 把字符串轉(zhuǎn)換為小寫
toString() 返回字符串對象值
toUpperCase() 把字符串轉(zhuǎn)換為大寫
trim() 移除字符串首尾空白
valueOf() 返回某個(gè)字符串對象的原始值
var x = "JohnJohn"; // x 是字符串
y = x.charAt(2); // h
y = x.charCodeAt(2); // 104
y = x.concat(y, y); // JohnJohn104104, x+y+y
y = x.indexOf('h'); // 2, 索引從0開始
y = x.lastIndexOf('h'); // 6
y = x.slice();
y = x.split('o'); //J,hnJ,hn
y = x.substr(2); // hnJohn
y = x.substring(2,4) // hn涨椒,[2,3]
y = x.toLocaleLowerCase(); // johnjohn,小寫
y = x.toLocaleUpperCase(); // JOHNJOHN,大寫
y = x.toString(); // 轉(zhuǎn)成Stirng
y = x.toUpperCase(); // JOHNJOHN,大寫
y = x.trim(); // JohnJohn,去除兩端的空格
y = x.valueOf(); // 返回某個(gè)字符串對象的原始值