1.复制n(n为正整数)个字符串
String.prototype.repeatStr = function(n){
var arr = [];
var _this = this;//函数内this指向不同,先声明this指向String
function repeat(){
for(var i=0; i<_this.length; i++){
arr.push(_this[i]);
}
}
while(n-->0){//执行n次
repeat()
}
return arr.join('');
}
console.log('str'.repeatStr(2));//'strstr'
//相当于es6的'str'.repeat(2)
/*或者:
function chongfu(str,n){
return Array(n+1).join('str');
}
chongfu('str',3);//strstrstr
*/
2.删除指定索引位置的字符,索引无效将不删除任何字符
String.prototype.deleteCharAt = function(index){
if(index < 0 || index >= this.length){
return this.valueOf();
}else if(index == 0){
return this.substring(1, this.length);
}else if(index == this.length - 1){
return this.substring(0, this.length - 1);
}else{
return this.substring(0, index) + this.substring(index + 1);
}
}
'lxflxf'.deleteCharAt(2);//'lxlxf'
3.两个字符串相连接
String.prototype.concatAb = function(newStr){
var arr = this.split('');
for(var i=0,len=newStr.length; i<len; i++){
arr.push(newStr[i]);
}
return arr.join('');
}
'ab'.concatAb('cd');//'abcd'
//'ab'concat('cd');
4.删除字符串中所有的数字
String.prototype.delAllNum = function(){
return this.replace(/[0-9]/g,'');
}
//console.log('2f 5fd5d5fd665'.delAllNum());f fddfd
5.去除字符串空格
String.prototype.trim = function(){
return this.replace(/(^\s+)|(\s+$)/g,'');
}
//console.log(' dsf fd f '.trim());
去除所有空格: str = str.replace(/\s*/g,""); 或者str.trim() es6
去除两头空格: str = str.replace(/^\s*|\s*$/g,"");
去除左空格: str = str.replace( /^\s*/, “”); 或者str.trimLeft()
去除右空格: str = str.replace(/(\s*$)/g, ""); 或者str.trimRight()
6.反转字符串
String.prototype.rever = function(){
var str = '';
for(var i=this.length-1; i>=0; i--){
str += this[i];
}
return str;
}
//console.log('2fs'.rever());sf2
//str.reverse();原生直接
7.截取一段字符串
String.prototype.cut = function(star,end){//包括头和尾
var str = '';
for(var i=star; i<=end; i++){
str += this[i];
}
return str;
}
//console.log('2fsgdfgf'.cut(2,6));sgdfg
8.驼峰命名转换(name_item_dog 转成 nameItemDog)
String.prototype.hump = function(){
var str = '';
for(var i=0; i<this.length; i++){
if(this[i] === '_'){
i++;
str += this[i].toUpperCase();
}else{
str += this[i];
}
}
return str;
}
//console.log('name_item_dog'.hump());nameItemDog