JS學習筆記(第5章)(String類型)

一、對象建立

String類型是字符串的對象包裝類型,能夠像下面這樣使用String構造函數來建立。正則表達式

var stringObject = new String("hello world");

String對象的方法也能夠在全部基本的字符串值中訪問到。其中,繼承的valueOf()、toLocaleString()和toString()方法,都返回對象所表示的基本字符串值。
String類型的每一個實例都有一個length屬性,表示字符串中包含多少個字符。數組

二、字符方法

兩個用於訪問字符串中特定字符的方法是:charAt()和charCodeAt()。這兩個方法都接收一個參數,即基於0的字符位置。函數

  • charAt()方法以單字符字符串的形式返回給定位置的那個字符;
  • charCodeAt()方法以單字符字符串的形式返回給定位置的那個字符的字符編碼;
var stringValue = "hello world";
alert(stringValue.charAt(1)); //"e"
alert(stringValue.charCodeAt(1)); //"101"

三、字符串操做方法

  • concat(),用於將一個或者多個字符串拼接起來,返回拼接獲得的新字符串。concat()方法能夠接收任意多個參數,能夠經過它拼接任意多個字符串。
var stringValue = "hello ";
var result = stringValue.concat("world","!");
alert(result); //"hello world!"
  • slice(指定字符串的開始位置,結束位置) //第二個參數就是子字符串最後一個字符後面的位置
  • substr(指定字符串的開始位置,返回的字符個數);
  • substring(指定字符串的開始位置,結束位置);
var stringValue = "hello world";
alertr(stringValue.slice(3,7));  //"lo w"
alert(stringValue.substring(3,7));  //"lo w"
alert(stringValue.substr(3,7));  //"lo worl"

在傳遞給這些方法的參數是負數的狀況下:編碼

  • (1)slice()方法會將傳入的負值與字符串的長度相加;
  • (2)substr()方法將負的第一個參數加上字符串的長度,而將負的第二個參數轉換爲0;
  • (3)substring()方法會把全部的複製參數都轉換爲0。
var stringValue = "hello world";      
  alert(stringValue.slice(-3));        //"rld"
  alert(stringValue.substring(-3));    //"hello world"
  alert(stringValue.substr(-3));       //"rld" 
  
  alert(stringValue.slice(3,-4));      //"lo w"
  alert(stringValue.substring(3,-4));  //"hel"
  alert(stringValue.substr(3,-4));     //""(空字符串)

四、字符串位置方法

從字符串中查找子字符串的方法:indexOf()和lastIndexOf()。從一個字符串中搜索給定的子字符串,而後返回子字符串的位置(若沒有找到該子字符串,則返回-1);code

  • indexOf()方法從字符串的開頭向後搜索子字符串;
  • lastIndexOf()方法是從字符串的末尾向前搜索子字符串;

這兩個方法均可以接收可選的第二個參數,表示從字符串中的哪一個位置開始搜索。對象

五、trim()方法

  • trim()方法會建立一個字符串的副本,刪除前置及後綴的全部空格,而後返回結果;
  • trimLeft()trimRight()方法,分別用於刪除字符串開頭和末尾的空格。

六、字符串大小寫轉換方法

  • toLowerCase()、toLocaleLowerCase()、toUpperCase()、toLocaleUpperCase();
  • toLocaleLowerCase()和toLocaleUpperCase()則是針對特定地區的實現。

七、字符串的模式匹配方法

  • (1)match(),它只接收一個參數,要麼是一個正則表達式,要麼是一個RegExp對象
  • (2)search():它只接收一個參數,要麼是一個正則表達式,要麼是一個RegExp對象。該方法返回字符串中第一個匹配項的索引;search()方法始終是從字符串開頭向後查找模式。
var text = "cat, bat, sat, fat";
var pos = text.search(/at/);
alert(pos); //1
  • (3)replace():接收兩個參數,第一個參數能夠是一個RegExp對象或者一個字符串,第二個參數能夠是一個字符串或者一個函數。若是第一個參數是字符串,那麼只會替換第一個子字符串。要想替換全部的子字符串,惟一的辦法就是提供一個正則表達式,並且要指定全局(g)標誌。
var text = "cat, bat, sat, fat";
var result = text.replace("at","ond");
alert(result);   //"cond, bat, sat, fat"
result = text.replace(/at/g, "ond");
alert(result);   //"cond, bond, sond, fond"

(4)split()能夠基於指定的分隔符將一個字符串分割成多個子字符串,並將結果放在一個數組中(將字符串轉換爲數組)。分隔符能夠是字符串,也能夠是一個RegExp對象。它還能夠接受可選的第二個參數,用於指定數組的大小,一遍確保返回的數組不會超過既定大小。繼承

var colorText = "red,blue,green,yellow";
var colors1 = colorText.split(",",2);  //["red","blue"]

八、localeCompare()方法

localeCompare()方法用於比較兩個字符串,並返回下列值中的一個:索引

  • (1)若是字符串在字母表中應該排在字符串參數以前,則返回一個負數;
  • (2)若是字符串等於字符串參數,則返回0 ;
  • (3)若是字符串在字母表中應該排列在字符串參數以後,則返回一個正數。
var stringValue = "yellow";
alert(stringValue.localeCompare("brick")); //1
alert(stringValue.localeCompare("yellow")); //0
alert(stringValue.localeCompare("zoo")); //-1

九、fromCharCode()方法

fromCharCode()方法的任務是接收一或多個字符編碼,而後將它們轉換成一個字符串,該方法與charCodeAt()執行的是相反操做。
alert(String.fromCharCode(104,101,108,108,111)); //"hello"字符串

十、HTML方法

P130string

相關文章
相關標籤/搜索