字符串常用方法
如何声明
- 字面量方式: '' "" 测试字面量方式返回值为string
- 构造函数方式: new String() 测试构造函数方式返回值为object
属性
- length : 长度
方法 (查、替、截、转)
<!-- 所有字符串的方法都不会影响原字符串 -->
查
indexOf('字符串',start) : 查找子串在父串中第一次出现的下标位置,如果没有,则返回-1
var str = 'how do you do'; console.log(str.indexOf('do')); //4 console.log(str.indexOf('de')); //-1 console.log(str.indexOf('do',5)); //11 console.log(str.indexOf('do',4)); //4
lastIndexOf('字符串',start) : 查找子串在父串中从右向左查找第一次出现的下标位置,如果没有找到,返回 -1
var str = 'how do you do'; console.log(str.indexOf('do')); //4 console.log(str.indexOf('de')); //-1 console.log(str.indexOf('do',5)); //11 console.log(str.indexOf('do',4)); //4 console.log(str.lastIndexOf('do')); //11 console.log(str.lastIndexOf('de')); //-1 console.log(str.lastIndexOf('do',5)); //4 console.log(str.lastIndexOf('do',4)); //4
- charAt(index) : 根据下标查找字符。 遍历字符串 for(var i= 0 ,len =str.lenght; i< len ;i++){ console.log (str.charAt(i)) }
- charCodeAt(index) : 根据下标查找字符编码。
替
replace(旧串,新串) : 替换字符串
//声明字符串 var str = 'how do you do'; console.log(str.replace('do','de')); //'how de you do' // for(var i = 0;i < str.length;i ++){ // str = str.replace('do','de'); // } while(str.indexOf('do') !== -1){ str = str.replace('do','de'); } console.log(str);
截
- substring(start,end) : 从哪截取到哪,支持参数互换、不支持负数
- substr(start,length) :从哪截取多少个
- slice(start,end) :从哪截取到哪,不支持参数互换、支持负数
var str = 'how do you do'; console.log(str.substring(4)); //do you do console.log(str.substr(4)); //do you do console.log(str.slice(4));//do you do console.log(str.substring(4,6)); //do console.log(str.substr(4,6)); //do you console.log(str.slice(4,6));//do console.log(str.substring(6,4)); //do console.log(str.slice(6,4));//'' console.log(str.substring(-6,-4)); //'' console.log(str.slice(-6,-4));//'yo'
转
- toUpperCase() : 将小写转为大写字母
- toLowerCase() : 将大写转为小写字母
- split('切割符',length) : 将字符串切割为数组
var str = 'How Are You'; console.log(str.toUpperCase()); //HOW ARE YOU console.log(str.toLowerCase()); //how are you var arr = str.split(' ',2); //['How', 'Are'] 2表示要几段 在这里表示前两段 console.log(arr);
拼
- concat() : 合并字符串
var str = 'hello';
console.log(str.concat(' world')); // hello world
去空白
- replaceAll 去掉所有空格
var str = ' a b '; console.log('(' + str.replaceAll(' ',' ') + )'); trim() : 删除字符串两端空白 var str = ' a b '; console.log('(' + str.trim() + ')'); //(a b) trimStart() : 删除字符串左端空白 var str = ' a b '; console.log('(' + str.trimStart() + ')'); //(a b ) trimEnd() : 删除字符串右端空白 var str = ' a b '; console.log('(' + str.trimEnd() + ')'); //( a b )
静态方法
- String.fromCharCode(编码) : 根据编码返回字符