本文由 发布,转载请注明出处,如有问题请联系我们! 发布时间: 2021-08-01js字符串反转函数-react收集表单数据插件
加载中在JavaScript中,如果我们想要做字符串反转,大家会立马想起:
一个
const str = "www.mzh.ren";str.split('').reverse().join('');// "ner.hzm.www"换句话说,当字符串数组变换为二维数组时,启用二维数组的reverse()方式,线程数产生一个字符串数组。
字符串数组->二维数组-> reverse();
2依据方式1,能够应用array . prototype . slice . call(string)将字符串数组变换为二维数组。
const str = "www.mzh.ren";Array.prototype.slice.call(str).reverse().join('');// "ner.hzm.www"三
因此难题变成了“如何把字符串数组转化成二维数组”,因此拓展操作符(…)务必有一个名字:
const str = 'www.mzh.ren';[...str].reverse().join('');// "ner.hzm.www"四
Array.from()并不是不太可能:
const str = "www.mzh.ren";Array.from(str).reverse().join('');// "ner.hzm.www"五
Object.assign([],string)还能够将字符串数组转化成二维数组,这是一个很古怪的方法。
const str = "www.mzh.ren";Object.assign([], str).reverse().join('');// "ner.hzm.www"六
转化成二维数组后,接口方式还可以更改。Array.reduce()方式可用以拼凑。
const str = "www.mzh.ren";str.split('').reduce((prevs, curr) => curr prevs);// "ner.hzm.www"七
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"));八
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 – MediumJavaScript完成字符串数组逆置的几类方式 – 罗任德 – 博客园4 Ways to Convert String to Character Array in JavaScript | SamanthaMing.com