JS算法教程之字符串去重与字符串反转


Posted in Javascript onDecember 15, 2020

一、字符串去重

说起字符串去重,第一时间就会想起数组去重,所以我们可以把字符串转换为数组,然后对数组去重,去重完毕后在拼接成字符串,下面就简单罗列两种字符串去重的方法,接下来我们看代码。

第一种方法:

逻辑步骤:

1、使用split或者ES6的展开运算符...把字符串切割成数组

2、使用ES6的Set数据解构,它类似于数组,但是它成员的值都是唯一的,使用new创建

3、对去重后的数组使用join拼接

let str = '11223344aabbcc'
function strSeparate(s) {
 return [...new Set([...s])].join('');
 // or return [...new Set(s.split(''))].join('')
}
console.log(strSeparate(str))

第二种方法:

逻辑步骤:

第二种方法的逻辑步骤和第一种方法的逻辑步骤只有第2步不同,第1步和第3步都是把字符串转成数组,对数组去重,然后拼接成字符串。

function strSeparate(s) {
 // 使用展开运算符,字符串转换成数组
 s = ...str;
 let arr = [];
 for(let i = 0; i < s.length; i++) {
  if(arr.indexOf(s[i]) == -1) {
   arr.push(s[i])
  }
 }
 return arr.join('');
}

二、字符串反转

字符串反正我能想到的最简单的就是使用数组的reverse方法,所以还是需要将字符串切割成数组,然后反转数组,再拼接。

let str = 'abcdefg'
function strReverse(s) {
 return [...s].reverse().join('');
}
// or
function reverse(s) {
 return s.split('').reverse().join('');
}

至于字符串转的方法还有很多,我也再网上看了很多,目前还是觉得以上两种最为简单,大家如果有什么更好的方法,可以留言也可以私发,我们相互学习

总结

到此这篇关于JS算法教程之字符串去重与字符串反转的文章就介绍到这了,更多相关JS字符串去重与反转内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
基于Jquery实现的一个图片滚动切换
Jun 21 Javascript
js综合应用实例简单的表格统计
Sep 03 Javascript
jquery操作下拉列表、文本框、复选框、单选框集合(收藏)
Jan 08 Javascript
JavaScript基础知识之方法汇总结
Jan 24 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
Apr 01 Javascript
JS代码实现table数据分页效果
May 26 Javascript
vue-music关于Player播放器组件详解
Nov 28 Javascript
快速解决vue-cli不能初始化webpack模板的问题
Mar 20 Javascript
vue中子组件传递数据给父组件的讲解
Jan 27 Javascript
eslint 的三大通用规则详解
May 16 Javascript
js实现左右轮播图
Jan 09 Javascript
vue 调用 RESTful风格接口操作
Aug 11 Javascript
JavaScript基于SVG的图片切换效果实例代码
Dec 15 #Javascript
Vue解决移动端弹窗滚动穿透问题
Dec 15 #Vue.js
8个非常实用的Vue自定义指令
Dec 15 #Vue.js
JavaScript中Object、map、weakmap的区别分析
Dec 15 #Javascript
JavaScript中遍历的十种方法总结
Dec 15 #Javascript
token 机制和实现方式
Dec 15 #Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
Dec 14 #Vue.js
You might like
PHP 微信支付类 demo
2015/11/30 PHP
[原创]PHP字符串中插入子字符串方法总结
2016/05/06 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
2008/08/14 Javascript
jQuery 插件 将this下的div轮番显示
2009/04/09 Javascript
javascript 读取XML数据,在页面中展现、编辑、保存的实现
2009/10/27 Javascript
javascript 触发HTML元素绑定的函数
2010/09/11 Javascript
从盛大通行证上摘下来的身份证验证js代码
2011/01/11 Javascript
JavaScript高级程序设计 读书笔记之十一 内置对象Global
2012/03/07 Javascript
Jquery右下角抖动、浮动 实例代码(兼容ie6、FF)
2013/08/15 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
关于js内存泄露的一个好例子
2013/12/09 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
Javascript定义类(class)的三种方法详解
2015/03/13 Javascript
JavaScript+html5 canvas实现本地截图教程
2020/04/16 Javascript
js实现固定宽高滑动轮播图效果
2017/01/13 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
如何使用Bootstrap创建表单
2017/03/29 Javascript
es6 字符串String的扩展(实例讲解)
2017/08/03 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
2020/12/14 Vue.js
[02:04]2014DOTA2国际邀请赛 BBC小组赛第三天总结
2014/07/12 DOTA
[58:25]VP vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python爬取京东的商品分类与链接
2016/08/26 Python
分数霸榜! python助你微信跳一跳拿高分
2018/01/08 Python
python将pandas datarame保存为txt文件的实例
2019/02/12 Python
Scrapy+Selenium自动获取cookie爬取网易云音乐个人喜爱歌单
2021/02/01 Python
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
HTML5 Web 存储详解
2016/09/16 HTML / CSS
美国波道夫·古德曼百货官网:Bergdorf Goodman
2017/11/07 全球购物
小蚁科技官方商店:YI Technology
2019/08/23 全球购物
优秀护士获奖感言
2014/02/20 职场文书
国培远程培训感言
2014/03/08 职场文书
导游词之安徽巢湖
2019/12/26 职场文书
Javascript webpack动态import
2022/04/19 Javascript
python双向链表实例详解
2022/05/25 Python
python缺失值填充方法示例代码
2022/12/24 Python