面试之JavaScript String对象常用方法

版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 https://blog.csdn.net/qq_43168841/article/details/83048825

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,快速升职加薪,走上人生巅峰。

猜你喜欢

转载自blog.csdn.net/qq_43168841/article/details/83048825