字符串常用的属性
1 .length—>返回的是字符串的长度
2 .ChartAt(索引)–>返回的是指定索引位置的字符串,如果超出索引值范围,返回空字符串
3 .concat(字符串1,字符串2)–>返回的是拼接之后的新字符串
4 .indexOf(要找的字符串,从某个位置开始找的索引)---->返回值是这个字符串的索引值,没有找到就返回-1
5 .lastIndexOf(要找的字符串,从某个位置开始找的索引)—>从后向前找,但是索引任然是从左到右的方式,同样找不到返回-1
6 .replace(“原来的字符串”,“新的字符串”)—>用来替换字符串
7 .slice(开始的索引为a,结束的索引为b)—>从索引为a的位置开始截取,到b位置结束,不包含b的位置,包前不包后,返回值是提取后的字符串
8 .substr(开始的位置,截取的个数)–>用来的截取,返回的是截取的字符串
9 .substring(开始的索引,结束的索引)—>返回值是提取后的字符串,包前不包后
10 .split(“要干掉的字符串”,[分割后留下的个数])—>分隔字符串,返回是数组形式分割后的数据
11 .trim()–>去除字符串前后的空白
12 .toLowerCase()转小写
13 .toUpeerCase()转大写
下面是结合方法写的小例子
var str = "萨帕迪卡";//js中没有字符类型
console.log(str.length);
//字符串可以看成是多个字符组成的数组(但是js中没有字符类型), 可以用length属性. 可以通过for循环遍历
//特性: 不可变性-->字符串的值是不能改变的
console.log(str[2]);//可以访问
str[1] = "哇";
str = "萨瓦迪卡";//重新赋值. 不是修改. 因为指向改变了并不是真正的值改变
console.log(str);//不能修改值
var str1 = "what are you long sha lie ?";
console.log(str1.charAt(2));//返回是指定索引位置的字符串-->a
var str2 = "what";
console.log(str2.concat(" are ", "you ", "long sha lie?"));//返回值是拼接后的字符串-->whatare you long sha lie ?
var str3 = "what are you long sha lie ?";
console.log(str3.indexOf("a"));//不写第二个参数, 默认从索引为0的位置开始找,返回值是索引-->2
console.log(str3.lastIndexOf("a", 19));//不写第二个参数, 默认从索引为length-1的位置开始找-->20
console.log(str3.replace("a", "哈哈"));-->默认只替换第一个a
console.log(str3.replace(/a/, "哈哈"));//正则表达式的语法
console.log(str3.replace(/a/g, "哈哈"));//全局匹配a, 都替换成哈哈
console.log(str3.slice(4, 6));//开始索引为4,结束的索引为6(不包括索引为6)--->返回值是截取后的字符串
console.log(str3.substring(4, 6));//开始的索引为4,结束的索引为6,不包括6
console.log(str3.substr(4, 6));//从索引为4的位置开始截取, 截取6个
var str4 = " 奥迪|奔驰|宝马 |五棱宏光|马萨拉蒂|保时捷 ";
console.log(str4.split("|",2));//要干掉的字符串,["分割后留下的个数"]---> [" 奥迪", "奔驰"]
var arr = str4.split("|");
console.log(arr);--->[" 奥迪", "奔驰", "宝马 ", "五棱宏光", "马萨拉蒂", "保时捷 "]
for(var i = 0 ; i < arr.length; i++){
console.log(arr[i]);--->奥迪奔驰宝马五棱宏光马萨拉蒂保时捷
}
console.log(str4.trim());-->奥迪|奔驰|宝马 |五棱宏光|马萨拉蒂|保时捷
var str5 = "what are you long sha lie HHHHH?";
console.log(str5.toUpperCase());--->WHAT ARE YOU LONG SHA LIE HHHHH?
console.log(str5.toLowerCase());-->whatareyoulongshalie?