翻转字符串——相信许多编程初学者都玩过这个算法吧,这篇文章是记录我被该算法玩的一次尴尬教训!!!

题目描述: 将字符串以倒序输出,如“JavaScript”反转后为“tpircSavaJ”。

我的第一思路:

将字符串转换为数组,然后交换数组前后对应位置的元素(最常规的解法了)

直接上代码

/*JS函数*/
function reverseString(str) {const arrayStr = str.split(''); //将字符串转换为数组for (var i = 0; i < arrayStr.length/2; i++) {var Str = arrayStr[i];arrayStr[i] =  arrayStr[arrayStr.length-i-1];arrayStr[arrayStr.length-i-1] = Str;}return arrayStr.toString();    //将数组转换为字符串
}console.log(reverseString("JavaScript"));

运行结果

显然满足题目要求输出字符串的逆序列。

思考: 从运行结果可以看出,输出的字符串由“,”依次隔开,此时我们想办法将字母间“,”去掉,最直接的方法那就是用“”替换掉“,”,因此我们引入join()方法。

修改程序

function reverseString(str) {const arrayStr = str.split(''); //将字符串转换为数组for (var i = 0; i < arrayStr.length/2; i++) {var Str = arrayStr[i];arrayStr[i] =  arrayStr[arrayStr.length-i-1];arrayStr[arrayStr.length-i-1] = Str;}return arrayStr.join('');    //引入join()方法
}console.log(reverseString("JavaScript"));

运行结果

到这里我便盲目的以为自己已经成功的解决了JS翻转字符串的问题,当我自信的点开参考答案后,被狠狠地上了一课!!!!

上答案

function reverseString(str) {return str.split('').reverse().join('');
}
reverseString("hello");

家银们,没有看错,JS实现翻转字符串只需要简简单单调用三个方法!!!我XXXXXXXXXX

JS大大直接定义了数组反转的方法,没错就是reverse()!!!我深深记住你了

JS翻转字符串——被reverse()支配的恐惧相关推荐

  1. Mysql翻转字符串reverse

    颠倒字符串 SELECT reverse('chinese'); # esenihc SELECT reverse('pep'); # pep SELECT reverse(1234567); # 7 ...

  2. js处理字符串、数组的方法

    文章目录 处理字符串 1.js把字符串处理成数组的两种方式 2.截取指定长度字符串 1) substr() 和 substring() 2)slice 3.将字符串分割成子字符串数组 1)split ...

  3. 算法--------翻转字符串里的单词(Java版本)

    题目: 给定一个字符串,逐个翻转字符串中的每个单词.示例 1:输入: "the sky is blue" 输出: "blue is sky the" 示例 2: ...

  4. 【我解C语言面试题系列】013 以单词为单位的翻转字符串

    [我解C语言面试题系列]013 以单词为单位的翻转字符串 以单词为单位的翻转字符串 原题:Write a function string reverse string word By word (St ...

  5. freeCodeCamp 学习记录——初级算法「01」翻转字符串

    从这篇开始与非将逐篇介绍在初级算法闯关中遇到的问题和记录,有疏漏和错误的地方希望大家可以帮忙指正.这里推荐一个MDN web docs网站,博客里的方法释义均来自此,点击相应位置可以获得详细释义. 问 ...

  6. 力扣151. 翻转字符串里的单词

    给你一个字符串 s ,逐个翻转字符串中的所有 单词 . 单词 是由非空格字符组成的字符串.s 中使用至少一个空格将字符串中的 单词 分隔开. 请你返回一个翻转 s 中单词顺序并用单个空格相连的字符串. ...

  7. leetcode151. 翻转字符串里的单词

    给定一个字符串,逐个翻转字符串中的每个单词. 示例 1: 输入: "the sky is blue" 输出: "blue is sky the" 代码 clas ...

  8. LeetCode 186. 翻转字符串里的单词 II

    文章目录 1. 题目 2. 解题 1. 题目 给定一个字符串,逐个翻转字符串中的每个单词. 示例: 输入: ["t","h","e",&qu ...

  9. freecodecamp能学php吗,freeCodeCamp 学习记录——初级算法「01」翻转字符串

    从这篇开始与非将逐篇介绍在初级算法闯关中遇到的问题和记录,有疏漏和错误的地方希望大家可以帮忙指正.这里推荐一个MDN web docs网站,博客里的方法释义均来自此,点击相应位置可以获得详细释义. 问 ...

最新文章

  1. 如何从菜鸡变成收割机,大厂面试的算法,你懂了吗?
  2. 云计算:存储之后,IT江湖之上的新大佬
  3. linux centos 查看桌面环境
  4. 基于双线性插值的图像旋转原理及MATLAB实现(非自带函数)
  5. mysql sleep连接过多的完美解决办法
  6. 什么代码可以涮龙王_《西游记》西牛贺洲的大江大河里,为什么没有龙王?如来默不作声...
  7. ZH奶酪:【阅读笔记】Deep Learning, NLP, and Representations
  8. 将普通文章内容替换为微信图文消息符合的内容
  9. PHP cURL上传图片
  10. 浏览器数据库 IndexedDB(一) 概述
  11. 【js】querySelectorAll和getElemensByTagName的区别
  12. 单片微型计算机原理及应用pdf,《单片微型计算机原理、应用及接口技术》.pdf...
  13. 手游方舟怎么输入代码_单机方舟不能输入代码怎么回事 | 手游网游页游攻略大全...
  14. FFmpeg源代码简单分析-通用-结构体分析-AVCodec
  15. NetSetMan IP快速切换
  16. .Net Core过滤器分类
  17. 从共享征信黑名单到建立白名单体系:LinkEye想打造基于区块链的征信联盟
  18. 群晖docker位置_OMV利用Docker配置nextcloud,实现个人网盘的搭建!
  19. 2019-01-09 工作日志:记录web3连接 respon
  20. Field ‘browser‘ doesn‘t contain a valid alias configuration

热门文章

  1. AudioSet指标解释
  2. Android UML类图介绍及画法
  3. Windows下安装使用openldap(zz)
  4. 三星预计Q1营业利润116亿美元 同比增长50%
  5. 解决上海移动企信通的empp.dll的Com组件的问题
  6. 这个队列的思路真的好,现在它是我简历上的亮点了。
  7. 9.python控制双目摄像头自动拍照
  8. 用python画画的原理_python来画画第二弹!
  9. 基于BP神经网络的手写数字识别
  10. 像CFO一样思考(2)- 拼多多用户增长的资金流秘密