1. 程式人生 > >面試之JavaScript String物件常用方法

面試之JavaScript String物件常用方法

image.png

length

返回字串的長度(字元數)

var str='Hello World!';
str.length; //12
charAt()

返回指定位置的字元,第一個字元位置為0

var str='Hello World!';
str.charAt(4); //o
charCodeAt()

返回字串第一個字元的 Unicode 編碼。

var str='Hello World!';
str.charAt(4); //111
concat()

用於連線兩個或多個字串。該方法沒有改變原有字串,但是會返回連線兩個或多個字串新字串。

var str1 = 'hello';
var str2 = ' word ';
var str3 = '123'
var str = str1.concat(str2,str3); // 'hello world 123'
fromCharCode()

可接受一個指定的 Unicode 值,然後返回一個字串。

var n = String.fromCharCode(72,69,76,76,79); //HELLO
String.fromCharCode(68); //D
indexOf()

返回某個指定的字串值在字串中首次出現的位置。如果沒有找到匹配的字串則返回 -1。

//在字串第五個位置開始查詢字元 "e" 第一次出現的位置:
var str="Hello world, welcome to the universe.";
var n=str.indexOf("e",5); //14
lastIndexOf()

可返回一個指定的字串值最後出現的位置,如果指定第二個引數 start,則在一個字串中的指定位置從後向前搜尋。

var str="Hello world, welcome to the universe.";
var n=str.lastIndexOf("w",5); //-1
var n=str.lastIndexOf("o",5); //4
match()

在字串內檢索指定的值,或找到一個或多個正則表示式的匹配。

string.match(regexp)

//regexp 必需。規定要匹配的模式的 RegExp 物件。
//如果該引數不是 RegExp 物件,則需要首先把它傳遞給 RegExp 建構函式,將其轉換為 RegExp 物件。
//結果為陣列,如果沒找到匹配結果返回 null 。
//全域性查詢字串 "ain",且不區分大小寫:
var str="The rain in SPAIN stays mainly in the plain";
var n=str.match(/ain/gi); //ain,AIN,ain,ain 
replace()

用於在字串中用一些字元替換另一些字元,或替換一個與正則表示式匹配的子串。該方法不會改變原始字串。

/

/執行一次替換
var str="Visit Microsoft! Visit Microsoft!";
var n=str.replace("Microsoft","Roon"); //Visit Roon!Visit Microsoft!
//執行一個全域性替換, 忽略大小寫:
var str="Mr Blue has a blue house and a blue car";
var n=str.replace(/blue/gi, "red"); //Mr red has a red house and a red car
esarch()

用於檢索字串中指定的子字串,或檢索與正則表示式相匹配的子字串。如果沒有找到任何匹配的子串,則返回 -1。

string.search(searchvalue); //searchvalue 必須。查詢的字串或者正則表示式。 // 返回相匹配的 String 物件起始位置,未找到返回-1,有多個就返回第一個找到的位置

var str = 'hello world!';
str.search('world'); //6
slice(start, end)

可提取字串的某個部分,並以新的字串返回被提取的部分。使用 start(包含) 和 end(不包含) 引數來指定字串提取的部分。

end若未指定,則要提取的子串包括 start 到原字串結尾的字串,字串中第一個字元位置為 0, 第二個字元位置為 1, 以此類推。

var str="Hello world!";
var n=str.slice(1,5); //ello
var s = str.slice(1); //ello world!

本次給大家推薦一個免費的學習群,裡面概括移動應用網站開發,css,html,webpack,vue node angular以及面試資源等。 對web開發技術感興趣的同學,歡迎加入Q群:864305860,不管你是小白還是大牛我都歡迎,還有大牛整理的一套高效率學習路線和教程與您免費分享,同時每天更新視訊資料。 最後,祝大家早日學有所成,拿到滿意offer,快速升職加薪,走上人生巔峰。