JS算法教程之字符串去重與字符串反轉(zhuǎn)
一、字符串去重
說起字符串去重,第一時間就會想起數(shù)組去重,所以我們可以把字符串轉(zhuǎn)換為數(shù)組,然后對數(shù)組去重,去重完畢后在拼接成字符串,下面就簡單羅列兩種字符串去重的方法,接下來我們看代碼。
第一種方法:
邏輯步驟:
1、使用split或者ES6的展開運算符...把字符串切割成數(shù)組
2、使用ES6的Set數(shù)據(jù)解構(gòu),它類似于數(shù)組,但是它成員的值都是唯一的,使用new創(chuàng)建
3、對去重后的數(shù)組使用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步都是把字符串轉(zhuǎn)成數(shù)組,對數(shù)組去重,然后拼接成字符串。
function strSeparate(s) {
// 使用展開運算符,字符串轉(zhuǎn)換成數(shù)組
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('');
}
二、字符串反轉(zhuǎn)
字符串反正我能想到的最簡單的就是使用數(shù)組的reverse方法,所以還是需要將字符串切割成數(shù)組,然后反轉(zhuǎn)數(shù)組,再拼接。
let str = 'abcdefg'
function strReverse(s) {
return [...s].reverse().join('');
}
// or
function reverse(s) {
return s.split('').reverse().join('');
}
至于字符串轉(zhuǎn)的方法還有很多,我也再網(wǎng)上看了很多,目前還是覺得以上兩種最為簡單,大家如果有什么更好的方法,可以留言也可以私發(fā),我們相互學(xué)習(xí)
總結(jié)
到此這篇關(guān)于JS算法教程之字符串去重與字符串反轉(zhuǎn)的文章就介紹到這了,更多相關(guān)JS字符串去重與反轉(zhuǎn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用js判斷當(dāng)前時區(qū)TimeZone是否是夏令時
這篇文章主要介紹了js判斷當(dāng)前時區(qū)TimeZone是否是夏令時的方法,需要的朋友可以參考下2014-02-02
layer.open彈層查看縮略圖的原圖,自適應(yīng)大小的實例
今天小編就為大家分享一篇layer.open彈層查看縮略圖的原圖,自適應(yīng)大小的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09

