欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js?字符串反轉(zhuǎn)(倒序)的幾種方式總結(jié)

 更新時(shí)間:2022年10月13日 12:33:55   作者:腦子不太靈光的程序員  
這篇文章主要介紹了js?字符串反轉(zhuǎn)(倒序)的幾種方式總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

js 字符串反轉(zhuǎn)(倒序)方式

第一種

let str = "i am good man";
let newStr = str.split('').reverse().join("");
console.log(newStr)

首先將字符串轉(zhuǎn)為數(shù)組,再反轉(zhuǎn)數(shù)組,最后將數(shù)組轉(zhuǎn)為字符串

  • split("") ------根據(jù)字符串拆分?jǐn)?shù)組
  • reverse()------數(shù)組反轉(zhuǎn)元素位置
  • join("")-------數(shù)組轉(zhuǎn)回字符串,不帶分隔符

第二種

let str = "i am good man ";
let newStr = "";
for(let i = 0;i<str.length;i++){
? ? let s = str.charAt(str.length-i-1)
? ? newStr += s;
}
console.log(newStr)//nam doog ma i
//從尾部開(kāi)始遍歷字符串,然后逐個(gè)拼接字符,得到最終的結(jié)果。

定義新的空字符串,遍歷str,charAt() 是提取字符串的一個(gè)字符,先去最后一個(gè)字符,再取第二個(gè),依次取,將取到的結(jié)果都放到新的字符前面,以此來(lái)實(shí)現(xiàn)倒序

第三種

let str ="i am good man";
let newStr = Array.prototype.slice.call(str);
console.log(newStr.reverse().join(""))//nam doog ma i

通過(guò)call方法來(lái)改變slice方法的執(zhí)行主體。將數(shù)組的slice方法調(diào)用call方法后,可以讓字符串具有數(shù)組的特性,從而可以直接調(diào)用reverse方法,最后再通過(guò)調(diào)用join方法,得到逆序字符串。

js 算法筆記——反轉(zhuǎn)字符串

反轉(zhuǎn)字符串

編寫(xiě)一個(gè)函數(shù),其作用是將輸入的字符串反轉(zhuǎn)過(guò)來(lái)。輸入字符串以字符數(shù)組 char[] 的形式給出。

示例 1:

  • 輸入:[“h”,“e”,“l”,“l”,“o”]
  • 輸出:[“o”,“l”,“l”,“e”,“h”]

思路

  • 數(shù)組reverse方法

最簡(jiǎn)單,最直接的解法,既然是數(shù)組形式輸出,直接數(shù)組reverse方法倒置數(shù)組即可,既然是算法題,肯定是不希望用數(shù)組reverse方法來(lái)解決。

  • 雙指針?lè)椒?/strong>

對(duì)于字符串,我們定義兩個(gè)指針(也可以說(shuō)是索引下表),一個(gè)從字符串前面,一個(gè)從字符串后面,兩個(gè)指針同時(shí)向中間移動(dòng),并交換元素。

  • 代碼實(shí)現(xiàn)
/**
 * @param {character[]} s
 * @return {void} Do not return anything, modify s in-place instead.
 */
 //數(shù)組方法實(shí)現(xiàn)
var reverseString = function(s) {
    return s.reverse();
};

//雙指針?lè)椒▽?shí)現(xiàn)
var reverseString = function(s) {
    let l = -1 
    let r = s.length
	while(++l < --r) [s[l], s[r]] = [s[r], s[l]];
    return s;
};

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • iframe子頁(yè)面與父頁(yè)面在同域或不同域下的js通信

    iframe子頁(yè)面與父頁(yè)面在同域或不同域下的js通信

    根據(jù)iframe中src屬性是同域鏈接還是跨域鏈接,通信方式也不同,下面有個(gè)不錯(cuò)的示例,需要的朋友可以參考下
    2014-05-05
  • 淺談js for循環(huán)輸出i為同一值的問(wèn)題

    淺談js for循環(huán)輸出i為同一值的問(wèn)題

    下面小編就為大家?guī)?lái)一篇淺談js for循環(huán)輸出i為同一值的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • JS獲取IP、MAC和主機(jī)名的五種方法

    JS獲取IP、MAC和主機(jī)名的五種方法

    javascript獲取客戶(hù)端IP的小程序,下面的代碼是我在所有windowsNT5.0及以上的系統(tǒng)上都測(cè)試通過(guò)的,喜歡的朋友可以收藏下
    2013-11-11
  • 使用原生JS添加進(jìn)場(chǎng)和退場(chǎng)動(dòng)畫(huà)詳解

    使用原生JS添加進(jìn)場(chǎng)和退場(chǎng)動(dòng)畫(huà)詳解

    總所周知啊,身為一個(gè)合格的前端搬磚工,會(huì)編寫(xiě)并且添加一些基礎(chǔ)的動(dòng)畫(huà)效果可謂是比較基礎(chǔ)且輕車(chē)熟路的技能了。本文將教大家如何使用原生JS添加進(jìn)場(chǎng)和退場(chǎng)動(dòng)畫(huà),感興趣的可以了解一下
    2022-10-10
  • JS sort排序詳細(xì)使用方法示例解析

    JS sort排序詳細(xì)使用方法示例解析

    這篇文章主要介紹了JS sort排序詳細(xì)使用方法示例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • js獲取url中

    js獲取url中"?"后面的字串方法

    這篇文章主要介紹了js如何獲取url中"?"后面的字串,需要的朋友可以參考下
    2014-05-05
  • 基于javascript html5實(shí)現(xiàn)3D翻書(shū)特效

    基于javascript html5實(shí)現(xiàn)3D翻書(shū)特效

    這篇文章主要介紹了基于javascript html5實(shí)現(xiàn)翻書(shū)特效的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • 限制復(fù)選框最多選擇項(xiàng)的實(shí)現(xiàn)代碼

    限制復(fù)選框最多選擇項(xiàng)的實(shí)現(xiàn)代碼

    下面小編就為大家?guī)?lái)一篇限制復(fù)選框最多選擇項(xiàng)的實(shí)現(xiàn)代碼。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05
  • js獲得地址欄?問(wèn)號(hào)后參數(shù)的方法

    js獲得地址欄?問(wèn)號(hào)后參數(shù)的方法

    這篇文章介紹了js獲得地址欄?問(wèn)號(hào)后參數(shù)的方法,有需要的朋友可以參考一下
    2013-08-08
  • js前端存儲(chǔ)之sessionStorage使用方法舉例

    js前端存儲(chǔ)之sessionStorage使用方法舉例

    sessionStorage是指本地存儲(chǔ)一個(gè)會(huì)話中的數(shù)據(jù),這些數(shù)據(jù)只有在同一個(gè)會(huì)話中的頁(yè)面才能訪問(wèn)并且當(dāng)會(huì)話結(jié)束后數(shù)據(jù)也隨之銷(xiāo)毀,這篇文章主要給大家介紹了關(guān)于js前端存儲(chǔ)之sessionStorage使用方法的相關(guān)資料,需要的朋友可以參考下
    2024-06-06

最新評(píng)論