js关于操作字符串的方法
1、 想得到字符串的长度有string.length属性
2、 想得到字符串指定位置的字符string.charAt(int index)
3、 截取想要的字符串用substring;
Str.substring(i);
上面这一种意思是:从起始位置i(包括i位置的字符)一直到字符串的结尾进行截取
Str.substring(i , j);
上面这一种意思是:从起始位置i开始(包括i位置的字符)一直到结束位置j(不包括j位置的字符)进行字符串的截取。
Tips:
下标i最小从0开始,填写负数会自动转换成0
下标i一般比j小,如果不小心填写错了,js会判断并将小的数字作为第一个下标。
4、 Slice截取字符串。
Slice和substring用途是一样的。区别在于slice允许负数,负数表示倒数的第几个的字符。
var str = “thewindyiscoming”;
var str1 = str.slice(-8,-6); //is
var str2 = str.slice(-6,0); //为空
var str3 = str.slice(-6,1); //为空
var str4 = str.slice(6,1); //为空
上面是本人经过实际测试,测试结论:
slice虽然支持负数,但是不支持正负、0负同存。
Slice不能像substring一样识别始终数字的大小,从而进行自动的调换数字。
5、 substr截取字符串
str.substr(start,length);
start表示起始位置(包括起始位置的字符),length表示截取的长度。
6、 如果要使字符串换行则用 var str = “the windy iscoming.\nWe must try hard”;
7、 字符串大小写转化使用toLowerCase()和toUpperCase();
8、 判断两个字符串是否相等?
“==”:先将两个字符串做toLowerCase()处理;然后用进行比较。JS会自动转换两个值的数值类型,如果匹配到在某个数值类型下两个值相等则给出true;
“===”:这种比较则不会那么宽容,不会进行类型转换,即使值一样,数据类型不一致也会给出false;
有时逻辑判断“!=”和“!==”类似于“==”和“===”的反义词。
9、 按条件截取字符串?
var str = “123&456&789”;
str.split(“&”); ——> 按照&符进行截断成一个数组类型的字符串
var spStr = [“123”,”456”,”789”];
10、 Join与split正好相反,用于字符串,如下:
var myList = newArray(”jpg”,”bmp”,”gif”,”ico”,”png”);
var portableList=myList.join(”|”);
//结果是jpg|bmp|gif|ico|png
11、 indexOf 获取字符串下标?
例如:indexOf(a,b);
参数a是必须参数,为要求匹配的字符。
参数b是可选参数,为起始检索的位置。
Tips:匹配的字符对大小写敏感。
12、 lastIndexOf()语法与indexOf()类似,它返回的是一个指定的子字符串值最后出现的位置,其检索顺序是从后向前。
13、 charAt获取指定下标的字符?
charAt(int index)方法是一个能够用来检索特定索引下的字符的String实例的方法。
charAt()方法返回指定索引位置的char值。索引范围为0~length()-1。
14、 search获取指定字符的下标?
var str = 'abcDEF';
console.log(str.search('c')); //返回2
console.log(str.search('d')); //返回-1
console.log(str.search(/d/i)); //返回3
15、 charCodeAt(int index)返回指定字符的unicode值?
16、 var str = '1a2b3c4d5e';
console.log(str.match('a'));
17、 Replace(目标字符串,替换字符串)?
var str = 'abcdeabcde';
alert(str.replace('a','A'));