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 · 访问量 2403
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览