個(gè)人簡(jiǎn)介
??個(gè)人主頁(yè): 前端雜貨鋪
???♂?學(xué)習(xí)方向: 主攻前端方向,也會(huì)涉及到服務(wù)端(Node.js)
??個(gè)人狀態(tài): 在校大學(xué)生一枚,已拿多個(gè)前端 offer(秋招)
??未來(lái)打算: 為中國(guó)的工業(yè)軟件事業(yè)效力 n 年
??推薦學(xué)習(xí):??前端面試寶典 ??Vue2 ??Vue3 ??Vue2/3項(xiàng)目實(shí)戰(zhàn) ??Node.js??Three.js ??JS版算法
??個(gè)人推廣:每篇文章最下方都有加入方式,旨在交流學(xué)習(xí)&資源分享,快加入進(jìn)來(lái)吧
【JavaScript版算法】系列文章目錄
內(nèi)容 | 參考鏈接 |
---|---|
JavaScript 數(shù)據(jù)結(jié)構(gòu)與算法 | 總目錄 |
題目:反轉(zhuǎn)字符串中的單詞
知識(shí)點(diǎn)匯總
String.prototype.split
split() 方法用于把一個(gè)字符串分割成字符串?dāng)?shù)組(不改變?cè)甲址?/p>
String.prototype.match
match() 方法可在字符串內(nèi)檢索指定的值,或找到一個(gè)或多個(gè)正則表達(dá)式的匹配。
Array.prototype.map
map() 方法返回一個(gè)新數(shù)組,數(shù)組中的元素為原始數(shù)組元素調(diào)用函數(shù)處理后的值(不會(huì)對(duì)空數(shù)組進(jìn)行檢測(cè),不會(huì)改變?cè)紨?shù)組)。
Array.prototype.reserve
reverse() 方法用于顛倒數(shù)組中元素的順序。
Array.prototype.join
join() 方法用于把數(shù)組中的所有元素轉(zhuǎn)換一個(gè)字符串,元素是通過(guò)指定的分隔符進(jìn)行分隔的。
測(cè)試用例
我們使用題目中的測(cè)試用例進(jìn)行測(cè)試
// 引入編碼的相對(duì)路徑
import revertByWorld from '../../code/string/lesson1'
// 測(cè)試用例(test..expect..toBe 為固定寫(xiě)法)
test('revertByWorld:Let\'s take LeetCode contest', () => {
expect(revertByWorld("Let's take LeetCode contest")).toBe("s'teL ekat edoCteeL tsetnoc")
})
1、解法一
export default (str) => {
// 字符串按空格進(jìn)行分隔,保存數(shù)組,數(shù)組的元素的先后順序就是單詞的順序
let arr = str.split(' ')
// 對(duì)數(shù)組進(jìn)行遍歷,然后每個(gè)元素進(jìn)行反轉(zhuǎn)
let result = arr.map(item => {
return item.split('').reverse().join('')
})
return result.join(' ')
}
2、解法二
export default (str) => {
// 1.字符串按空格進(jìn)行分隔,保存數(shù)組,數(shù)組的元素的先后順序就是單詞的順序
// 2.對(duì)數(shù)組進(jìn)行遍歷,然后每個(gè)元素進(jìn)行反轉(zhuǎn)
return str.split(' ').map(item => {
return item.split('').reverse().join('')
}).join(' ')
}
3、解法三
export default (str) => {
// 1.字符串按空格進(jìn)行分隔,保存數(shù)組,數(shù)組的元素的先后順序就是單詞的順序
// 2.對(duì)數(shù)組進(jìn)行遍歷,然后每個(gè)元素進(jìn)行反轉(zhuǎn)
// 3.\s 表示空格
return str.split(/\s/g).map(item => {
return item.split('').reverse().join('')
}).join(' ')
}
4、解法四
export default (str) => {
// 1.字符串按空格進(jìn)行分隔,保存數(shù)組,數(shù)組的元素的先后順序就是單詞的順序
// 2.對(duì)數(shù)組進(jìn)行遍歷,然后每個(gè)元素進(jìn)行反轉(zhuǎn)
// 3.[]表示可選項(xiàng),\w表示字符,'表示測(cè)試用例中的符號(hào),+表示大于一次
return str.match(/[\w']+/g).map(item => {
return item.split('').reverse().join('')
}).join(' ')
}
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-407566.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-407566.html
到了這里,關(guān)于【JavaScript數(shù)據(jù)結(jié)構(gòu)與算法】字符串類(反轉(zhuǎn)字符串中的單詞)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!