一、字符串的聲明
所有帶單引號或者雙引號的都叫做字符串
-
通過new運算符去聲明字符串(不常用)
var str1 = new String(100); //new可省略 var str2 = String("hello");
-
字符串常量賦值
var str3 = "hello";
二、字符串的訪問
-
獲取字符串中字符的個數
語法:字符串.length
str3.length; //5
-
訪問字符串中單個字符
字符串.charAt(下標),這種形式可以簡寫
str3.charAt(4) //o 下標從0開始 //簡寫形式 str3[4]; //o
注: 字符串是隻讀的,字符串一旦被聲明就沒辦法修改,但可以重新賦值字符串
//無法修改,字符串爲只讀 str3[0] = "H"; //但是可以重新賦值 str3 = "Hello";
三、字符串的ASCII碼轉換
-
charCodeAt()
格式:字符串.charCodeAt(下標)
功能:訪問字符串中對應下標字符的ASCII碼值
var str = "hello"; alert(str.charCodeAt(1)); //輸出函數,打印e的ASCII值
-
String.fromCharCode()
格式:String.fromCharCode(碼值1,碼值2…)
功能:將傳入的ASCII碼值轉成對應的字符
var str = String.fromCharCode(97,98,99,100); alert(str) //abcd
四、字符串的查找方法(重點)
-
indexOf()
格式:supStr.indexOf(subStr,start)
參數:第一個參數,查找的字符串
start 從哪個下標開始去查找,如果不傳入,默認從下標0開始查找
功能:在supStr中查找subStr第一次出現的位置,從start這個位置開始查找
返回值:-1 說明沒有查找到
var supStr = "abcabcabc"; var subStr = "abc"; alert(supStr.indexOf(subStr)); //第一次出現的位置爲0
-
lastIndexOf()
格式:supStr.lastIndexOf(subStr)
功能:在supStr中查找subStr最後一次出現的位置
返回值:-1 說明沒有查找到
var supStr = "abcabcabc"; var subStr = "abc"; alert(supStr.lastIndexOf(subStr)); //最後一次出現的位置爲6
-
search()
search方法與indexOf方法類似,不同之處在於search方法的參數可以是正則表達式,且search沒有start參數
格式:supStr.search(subStr)
參數:字符串/正則表達式
功能:在supStr中查找subStr第一次出現的位置
返回值:-1 說明沒有查找到
五、字符串提取方法
-
substring
格式:字符串.substring(start,end)
功能:將字符串中[start,end)提取這部分字符,生成一個新字符串
返回值:新生成的字符串
-
substr
格式:字符串.substr(start,length)
功能:從start開始截取length個字符,返回截取的字符串
返回值:新生成的字符串
var str = "hello";
var newStr1 = str.substring(1,4); //ell
var newStr2 = str.substr(1,3); //ell
-
replace()
格式:supStr.replace(oldStr,newStr)
功能:用newStr將oldStr替換掉,生成新字符串
參數:
第一個參數傳入的是字符串只能替換第一個oldStr
若要替換多個則需要使用正則表達式
返回值:替換成的新字符串
var str = "how are you"; var newStr = str.substring("are","old are"); alert(newStr); //"how old are you" alert(str); //"how are you" 對原字符串無影響
-
split()
格式:字符串,split(分割符)
功能:用分割符對原字符串,進行字符串分割,將分割完畢以後的子串,放在數組中返回
返回值:數組
var str = "how are you"; var arr = str.split(" "); alert(arr); //how,are,you alert(str); //"how are you"
注意:
- 相鄰的兩個分割符,會產生空字符串 “”
- (特殊用法)分割符是空字符串"",直接將每一個字符,單獨分割成子串,放在數組中返回
六、大小寫轉換
-
toLowerCase(),轉成全小寫
-
toUpperCase(),轉成全大寫
var str = "helloWORLD"; alert(str.toLowerCase()); //helloworld alert(str.toUpperCase()); //HELLOWORLD