1. 程式人生 > >內建物件String常用方法

內建物件String常用方法

String常用方法

String物件的方法有很多,但在工作中常用到的有這麼幾個,需要大家重點去了解使用;
1、parseInt()方法首先會檢視字串索為0位置上的字,如果是有效數字,會往下查詢,直到遇到小數點或非數字停止,並取整數:

parseInt("1234blue");   //returns    1234  
parseInt("0xA");   //returns    10  
parseInt("22.5");   //returns    22  
parseInt("blue");   //returns    NaN 

parseInt()有2個引數,第一個為字串,第二個引數代表進位制演算法;寫一個引數預設是十進位制演算法;

parseInt("AF",16);//return 175;十六進位制
parseInt("102",8);//return 66; 八進位制
parseInt("1010",2);//return 10; 二進位制

如果十進位制數包含前導0,那麼最好把基數10寫上,否則會得到八進位制的值。例如:

parseInt("010");   //returns    8  
parseInt("010",    8);   //returns    8  
parseInt("010",    10);   //returns    10 

2、parseFloat()方法與parseInt()方法的處理方式相似,從位置0開始檢視每個字元,直到找到第一個非有效的字元為止,然後把該字元之前的字串轉換成數字。不同的是該方法對於第一個出現的小數點是認可的,第二個出現的小數點則不做識別;例如:

parseFloat('.234dh');//return 0.234
parseFloat('c.234dh');//return NaN(非數字或小數點開頭,返回NaN)
parseFloat('2.23.4');//return 2.23

3、toUpperCase、toLowerCase是將字串轉化為大小寫的方法,如:

var str='hello';
str.toUpperCase();//return HELLO
var str1='HELLO';
str1.toLoewrCase();//return hello

4、substring(start,stop)、slice(start,end)及substr(start,length)三個方法的區別(重點,經常用到);
相同點:三個方法的第一個引數指的都是字串的下標,從0開始計算;第二個引數可忽略不寫,預設返回的字串會一直到字串的結尾;
不同點:
substring(start,stop)的引數不接受負數,返回的字串是“含頭不含尾”,如

var str='HELLO';
str.substring(1,4);//return ELL
//下標4對應的o沒有返回,這就是含頭不含尾

slice(start,stop)的引數可接受負數,返回的字串依然是“含頭不含尾”,負數表示從字串的尾部開始計算,-1指字串中最後一個字元,-2 指倒數第二個字元,以此類推。找到對應的開始字元後,按從左到右的方向返回數字,也是如:

var str='HELLO';
str.slice(1,4);//return ELL
str.slice(-5,4);//return HELL
//下標4對應的o沒有返回,這就是含頭不含尾如

substr(start,length)第一個引數可正可負,表示開始返回的位置,第二個引數必須是數值,表示要返回的長度(注意:這裡指的是長度而不是下標);

var str='HELLO';
str.substr(-5,4);//return HELL
str.substr(1,4);//return EllO

5、split()也是string常用方法,用來分割字串,表示通過XXX分割字元,返回的是陣列,如

var str='H-E-L-L-O';
str.split('-');//return  ["H", "E", "L", "L", "O"]
str.split('');//return  ["H", "E", "L", "L", "O"]
var str1='HELLO';
str.split('L');//return  ["HE", "", "O"]

6、indexOf(searchvalue,fromindex)返回某個指定的字串值在字串中首次出現的位置(下標);searchvalue表示要查詢的字元,fromindex表示從什麼位置開始查詢,引數範圍從0開始到stringObject.length - 1。如省略該引數,則將從字串的首字元開始檢索。預設只查詢第一個要查的字串的位置,找到則返回對應的下標,沒找到則返回-1;

var str='H-E-L-L-O';
str.indexOf('E',0);//return 2
str.indexOf('G',0);//return -1

7、總結:上述提到的都是string常用方法,這些方法不會直接改變原來str的內容,而是返回新的字串或陣列,通常要用新變數去接收;