charAt()与charCodeAt()
charCodeAt(index):返回index位置字符的字符编码。
charAt():返回index位置的字符本身。
var str = "a I love jixi";
//charCodeAt() 查找字符编码
console.log(str.charCodeAt(0)); // 返回值: 97 ? 根据角标 返回unicode中对应的码表值
//charAt() 查找角标对应值
console.log(str.charAt(0)); // 返回值: a ? 根据角标 返回角标对应的值
indexOf():从一个字符串中搜索给定的子字符串,只检测第一个字符串出现的位置。返回子字符串的位置索引值。返回值:数值。如果没有找到该子字符串,返回-1.
var email="[email protected]";
console.log(email.indexOf("m"));//0
console.log(email.indexOf("rr"));//返回第一个r的位置。
lastIndexOf():
var email="[email protected]";
console.log(email.lastIndexOf("."));//12.检测最后一个.的位置
字符串对象的截取方法:slice() substring() substr()
slice(start,end):截取子字符串。
参数:
- start必需,指定子字符串的开始位置。
- end可选,表示子字符串到哪里结束,end本身不在截取范围之内,省略时截取至字符串的末尾。
- 当参数为负数时,会将传入的赋值与字符串的长度相加。
var email="[email protected]";
console.log(email.slice(-3));//16-3=13,从第13位开始。
console.log(str.slice(-7,-2));//11-7=4 11-2=9 o wor
substring():语法及功能同slice完全一样。
区别在于:
- 当参数为负数时,自动将参数转换为0.两个参数都为0时,取出的值为空。
- substring()会将较小的数作为开始位置,将较大的数作为结束位置。
var str="hello world";
console.log(str.substring(2,-2));//he。自动转化为0,2
substr(start,len):截取子字符串。
参数:
- start为负数时,会将传入的负值与字符串的长度相加。
- len为负数时,返回空字符串。
编写js函数,用于获取输入参数的后缀名,如输入abc.txt,返回txt.
var str=prompt("请输入内容");
function getFileFormat(url){
var pos=str.lastIndexOf(".");
return url.substr(pos);
}
var formatName=getFileFormat(str);
console.log(formatName)
split(separator):吧一个字符串分割成字符串数组。返回值:Array.join()把数组转换成字符串。
var str="welcome-to-beijing";
var arr=str.split("-");
console.log(arr);// ["welcome", "to", "beijing"]
replace(regexp,replacement):在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。返回值:String。
replace()不改变原字符串,而是把替换的字符串放在另一个字符串中。
var tel='010-427843284,400-1234654,808-314342353';
var newTel=tel.replace(','," ");
console.log(tel);//010-427843284,400-1234654,808-314342353
console.log(newTel);//010-427843284 400-1234654,808-314342353
只把第一个,替换成了" "。
字符串的其他方法:
- toUpperCase()
- toLowerCase()
- 将字符串border-left-color转换成borderLeftColor
function camelback(str){
var arr=str.split("-"),newStr=arr[0];
for(var i=0;i<arr.length;i++){
var word=arr[i];
newStr+=word.charAt(0).toUpperCase()+word.substr(1);
//console.log(newStr);
}
return newStr;
}
console.log(camelback("border-left-color"));