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 相关文章推荐
使用JavaScript switch case 另类写法
Mar 14 Javascript
JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型
Oct 11 Javascript
基于BootStrap环境写jQuery tabs插件
Jul 12 Javascript
Javascript 高性能之递归,迭代,查表法详解及实例
Jan 08 Javascript
浅谈jQuery中的$.extend方法来扩展JSON对象
Feb 12 Javascript
Angular整合zTree的示例代码
Jan 24 Javascript
js实现点击展开隐藏效果(实例代码)
Sep 28 Javascript
微信小程序 image组件遇到的问题
May 28 Javascript
vue的注意规范之v-if 与 v-for 一起使用教程
Aug 04 Javascript
Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
Nov 20 Javascript
原生js实现日历效果
Mar 02 Javascript
使用JS实现动态时钟
Mar 12 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校验ISBN码的函数代码
2011/01/17 PHP
PDO版本问题 Invalid parameter number: no parameters were bound
2013/01/06 PHP
PHP JS Ip地址及域名格式检测代码
2013/09/27 PHP
PHPExcel中文帮助手册|PHPExcel使用方法(分享)
2017/06/09 PHP
php-fpm服务启动脚本的方法
2018/04/27 PHP
用jquery实现点击栏目背景色改变
2012/12/10 Javascript
自动刷新网页,自动刷新当前页面,JS调用
2013/06/24 Javascript
前台js调用后台方法示例
2013/12/02 Javascript
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
avalonjs制作响应式瀑布流特效
2015/05/06 Javascript
使用JS正则表达式 替换括号,尖括号等
2016/11/29 Javascript
基于JSON数据格式详解
2017/08/31 Javascript
vue下history模式刷新后404错误解决方法
2018/08/18 Javascript
Bootstrap-table自定义可编辑每页显示记录数
2018/09/07 Javascript
微信小程序实现下拉刷新动画
2019/06/21 Javascript
vue 使用localstorage实现面包屑的操作
2020/11/16 Javascript
Python中变量交换的例子
2014/08/25 Python
Python的Bottle框架中返回静态文件和JSON对象的方法
2015/04/30 Python
Python+MongoDB自增键值的简单实现
2016/11/04 Python
Python heapq使用详解及实例代码
2017/01/25 Python
python中logging包的使用总结
2018/02/28 Python
Python使用numpy模块创建数组操作示例
2018/06/20 Python
Python和Anaconda和Pycharm安装教程图文详解
2020/02/04 Python
浅谈python3 构造函数和析构函数
2020/03/12 Python
Python matplotlib图例放在外侧保存时显示不完整问题解决
2020/07/28 Python
python从ftp获取文件并下载到本地
2020/12/05 Python
canvas 绘图时位置偏离的问题解决
2020/09/16 HTML / CSS
丝芙兰波兰:Sephora.pl
2018/03/25 全球购物
广告设计应届生求职信
2014/03/01 职场文书
原材料检验岗位职责
2014/03/15 职场文书
《明天,我们毕业》教学反思
2014/04/24 职场文书
2014幼儿园家长工作总结
2014/11/10 职场文书
2014年商场工作总结
2014/11/22 职场文书
2014年银行年终工作总结
2014/12/19 职场文书
中国世界遗产导游词
2015/02/13 职场文书
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle