求助:将函数参数字符串转为数组并反转的代码问题
解决字符串反转的问题
嘿,我来帮你看看这个问题~你写的代码没法正常工作,问题出在split(" ")这里哦!
你看,split(" ")是按空格来拆分字符串的,但你传入的"howdy"里根本没有空格,所以拆分出来的数组就只有["howdy"]这一个元素,反转之后还是它自己,最后join('')完自然还是原字符串啦。
要实现把字符串转成单个字符的数组再反转,你需要把split的参数改成空字符串'',这样才能把每个字符都拆成数组元素。修正后的代码如下:
function reverseString(str) { var arr = str.split('').reverse().join(''); return arr; } reverseString("howdy"); // 执行后会返回 "ydwoh"
我再给你拆解下每一步的作用:
str.split(''):将字符串拆分为单个字符组成的数组,比如"howdy"会变成["h","o","w","d","y"].reverse():反转数组的元素顺序,上面的数组会变成["y","d","w","o","h"].join(''):把反转后的数组元素重新拼接成字符串,最终得到"ydwoh"
内容的提问来源于stack exchange,提问作者mcwachira
相关产品推荐
相关产品推荐

