js字符串反转函数(react收集表单数据插件)

发布日期:2024-05-24 18:10:53     手机:https://m.xinb2b.cn/wenda/news39397.html    违规举报
核心提示:在Javascript中,如果要做字符串反转,我们第一时间会想到: 1 const str = "www.mzh.ren";str.split('').revers().join('');// "ner.hzm.www" 即,字符串转化为数

js字符串反转函数(react收集表单数据插件)

在Javascript中,如果要做字符串反转,我们第一时间会想到:

1

const str = "www.mzh.ren";str.split(\'\').reverse().join(\'\');// "ner.hzm.www"

即,字符串转化为数组,调用数组的reverse()方法,连接数组成字符串。

string->array->reverse();

2

根据方法1,可以利用Array.prototype.slice.call(string)将字符串转化成数组。

const str = "www.mzh.ren";Array.prototype.slice.call(str).reverse().join(\'\');// "ner.hzm.www"

3

于是这个问题就变成了“如何将字符串转化成数组”,那么,展开运算符(…)必须拥有姓名:

const str = \'www.mzh.ren\';[...str].reverse().join(\'\');// "ner.hzm.www"

4

Array.from()也不是不可以:

const str = "www.mzh.ren";Array.from(str).reverse().join(\'\');// "ner.hzm.www"

5

Object.assign([],string) 也可以将字符串转化为数组,算是奇技淫巧了。

const str = "www.mzh.ren";Object.assign([], str).reverse().join(\'\');// "ner.hzm.www"

6

转化成数组之后,也可以在连接方式做改变,Array.reduce() 方法,可以做一个拼接。

const str = "www.mzh.ren";str.split(\'\').reduce((prevs, curr) => curr + prevs);// "ner.hzm.www"

7

for 循环当然也可以:

const reverseString = (str) => {let i, j, reversed = [];for (i=str.length-1, j=0; i>=0; i--, j++) {reversed[j] = str[i];}return reversed.join(\'\');}console.log ("reverse -", reverseString ("reverse"));console.log ("reversed -", reverseString ("reversed"));

8

for循环就有更多的变种了,数组的push() 与 pop()方法也可以:

const reverseString = (str) => {str = str.split(\'\');let reversed = [];while (str.length > 0) {reversed.push(str.pop());}return reversed.join(\'\');}console.log ("reverse -", reverseString ("reverse"));console.log ("reversed -", reverseString ("reversed"));

参考资料

Seven ways to reverse a string in Javascript – Javascript in Plain English – Medium Javascript实现字符串逆置的几种方法 – 罗任德 – 博客园 4 Ways to Convert String to Character Array in Javascript | SamanthaMing.com
 
 
本文地址:https://wenda.xinb2b.cn/news39397.html,转载请注明出处。

推荐图文
推荐问答知道
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  违规举报  |  蜀ICP备18010318号-4  |  百度地图  | 
Processed in 0.065 second(s), 91 queries, Memory 0.46 M