step by step教你常用JS方法封装(三) -字符串方法

本文参考原文-http://bjbsair.com/2020-03-25/tech-info/6340.html

手把手教你常用JS方法封装(三) -字符串方法

持续更新中…

常用JS封装方法:

  • 项目常用JS方法封装(四) [ 数组相关处理 ]

使用方法非常简单,只需放到你的 utils.js 工具文件中,直接 export const 加上我的封装方法,在别的文件中使用{方法1,方法2,方法3…}引用后就可以直接使用了!

001.字符替换

可以替换任意数字和符号

/**  
*   str 表示将要替换的字符串  
*   l 表示你将要替换的字符  
*   r 表示你想要替换的字符  
*/  
transFormat = (str, l, r) => {  
    let reg = new RegExp(l, 'g') // g表示全部替换,默认替换第一个  
    str = str.replace(reg, r)  
    return str  
}  
  
console.log(transFormat('2019-12-13', '-', '/')); // 2019/12/13  
console.log(transFormat('2019-12-13', '-', '')); // 20191213  
复制代码

002.在字符串指定位置插入字符

/**  
*   character 原字符串(String)  
*   site 要插入的字符的位置 (Number)  
*   newStr 想要插入的字符 (String)  
*/  
insertStr = (character, site, newStr) => {     
  return character.slice(0, site) + newStr + character.slice(site);  
}  
  
console.log(insertStr('20191217',4,'-'));   // 2019-1217  
复制代码

003.字符串反转处理分割

/**  
*   str 是你将要进行处理的字符串(String)  
*   under 是你根据什么字符处理(String)  
*   event 是你根据什么字符把处理结果分割(String)  
*/  
keyCharacterMap = (str,under,event) => {  
  return str.split(under).reverse().join(event)  
}  
  
console.log(keyCharacterMap('hello world','',''));  //  dlrow olleh  
console.log(keyCharacterMap('hello world',' ','-'));  //  world-hello  
复制代码

004.截取指定字符之前之后的字符串

//  截取指定字符之前的字符串  
beforeStrSub = (str, char) => {  
  return str.split(char)[0]  
}  
  
//  截取指定字符之后的字符串  
afterStrSub = (str, char) => {  
  return str.split(char)[1]  
}  
  
//  测试数据  
let str = 'abc:de;fghi.jk';  
console.log(beforeStrSub(str, ';'));  // abc:de  
console.log(afterStrSub(str, 'f'));   // ghi.jk  
复制代码

005.截取指定字符之间的字符串

/**  
*   str 要截取的字符串 (String)  
*   start 字符串截取的开始位置 (String)  
*   end 字符串截取的结束位置 (String)  
*/  
betweenStrSub = (str, start, end) => {  
  temp = str.split(start, 2);  
  content = temp[1].split(end, 2);  
  return content[0];  
}  
  
//  测试数据  
let str = 'abc:de;fghi.jk';  
console.log(betweenStrSub(str, ':', '.'));  // de;fghi  
console.log(betweenStrSub(str, 'bc', 'k'));  // :de;fghi.j  
console.log(betweenStrSub(str, ':', 'k'));   // de;fghi.j  
复制代码

006.字符串反转

/**  
 *  str 要反转的字符串  
 */  
strInversion = str => {   
  str = str + '';   
  let newStr=[];   
  newStr=str.split("").reverse().join("");   
  return newStr  
}  
  
//  测试数据  
console.log(strInversion("I Love You!"));   // !uoY evoL I  
复制代码

007.在字符串中查找指定的字符或者字符串

/**  
 * str 将要查找的字符串  
 * queryStr 想要在字符串中查找的字符或字符串  
 *   
 * 如果在字符串中有这个字符或者字符串,返回1,否则返回-1  
 */  
judgeStrHave = (str,queryStr) => {  
  return str.indexOf(queryStr) === -1?-1:1  
}  
  
//  测试数据  
let str = "ab66a0cc-25b4-44ab-9e17-5043d4fb9056_200×200";  
console.log(judgeStrHave(str,'×'));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值