javascript对字符串的操作

javascript对字符串的操作

1.字符串转化-toString()将数字转化为字符串
var num=19;
var mystr=num.toString();//"19"
2.字符串分割-split()将字符串分割为数组,第二个参数表示字符串数组返回的最大长度
var mystr="l,love,you,Do,you,love,me"
var substr=mystr.split(",");//[l,love,you,Do,you,love,me];
var arrayLimited=mystr.split(",",3);[l,love,you];
3.获取字符串长度-length()
var mystr="l,love,you,Do,you,love,me"var mystrLength=mystr.length();//25
4.查询子字符串-indexOf() 从字符传的开头开始查找,找到对应的坐标,找不到返回-1
          -lastIndexOf()从字符串的末尾开始查找,找到对应的坐标,找不到返回-1
          可以接收第二个参数,表示开始查找的位置
var mystr="l,love,you,Do,you,love,me"var index=mystr.indexOf("you");//7,基于0开始查找,找不到返回-1
var lastindx=mystr.lastIndexOf("you");//14
5.字符串替换-replace()默认只替换第一次查找到的,想要全局替换,需要置上正则全局标识
var mystr=var mystr="l,love,you,Do,you,love,me";
var replaceStr=mystr.replace("love","hate");//"l,hate,you,Do,you,love,me";
var goreplaceStr=mystr.replace(/love/g,"hate");//"l,hate,you,Do,you,hate,me";
6.查找给定字符或其字符编码值-charAt:字符,charCodeAt:编码值
var mystr="l,love,you,Do,you,love,me";
var char=mystr.charAt(8);//"o";从0开始
var charCode=mystr.charCodeAt(8);//111
7.字符串连接-contact()可以多个参数,拼接多个字符串
var str1="l,love,you";var str="Do,you,love,me!";
var str=str1.contact(str2);
8.字符串切割和提取-slice(),substring(),substr()三者之间的区别
slice():
var mystr="l,love,you,Do,you,love,me";
var sliceStr=mystr.slice(1,5);//从0开始,",lov"
substring():
var mystr="l,love,you,Do,you,love,me";
var substr=mystr.substring(1,5);//",lov"
substr();
9.字符串大小写转换-toLoowerCase():转换为小写 toUpperCase():转化为大写
var myStr = "I,love,you,Do,you,love,me";
var lowCaseStr = myStr.toLowerCase();//"i,love,you,do,you,love,me";
var upCaseStr = myStr.toUpperCase();//"I,LOVE,YOU,DO,YOU,LOVE,ME"
10.字符串匹配-match()和exec(),匹配失败则返回null;search(),失败返回-1
match().接受一个正则的参数
var myStr = "I,love,you,Do,you,love,me";
var pattern="/love/";
var result=mystr.match(pattern);//["love"];
exec():字符串和字符调换了位置
var myStr = "I,love,you,Do,you,love,me";
var pattern="/love/";
var result=pattern.exec(pattern);
search();匹配到下标
var myStr = "I,love,you,Do,you,love,me";
var pattern = /love/;
var result = myStr.search(pattern);//2
一些常见的面试题:

1.题目:写一个getSuffix函数,用于获得输入参数的后缀名,例如输入abcd.txt,返回txt

function getSuffix(str){
return str.substring(str.lastIndexOf('.')+1);
}
2.查找字符串中出现最多的字符和个数
var str = "nininihaoa";
var o = {};
for (var i = 0, length = str.length; i < length; i++) {
var char = str.charAt(i);
if (o[char]) {
o[char]++; //次数加1
} else {
o[char] = 1; //若第一次出现,次数记为1
}
}

console.log(o); //输出的是完整的对象,记录着每一个字符及其出现的次数

//遍历对象,找到出现次数最多的字符的次数
var max = 0;
for (var key in o) {
if (max < o[key]) {
max = o[key]; //max始终储存次数最大的那个
}
}
for (var key in o) {
if (o[key] == max) {
//console.log(key);
console.log("最多的字符是" + key);
console.log("出现的次数是" + max);
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值