请参考 –
https://jsfiddle.net/jy5p509c/
var a = "who all are coming to the party and merry around in somewhere"; res = ""; resarr = []; for(i=0 ;i<a.length; i++) { if(a[i] == " ") { res+= resarr.reverse().join("")+" "; resarr = []; } else { resarr.push(a[i]); } } console.log(res);
解决方法
问题是你的if(a [i] ==“”)条件不满足最后一个单词
var a = "who all are coming to the party and merry around in somewhere"; res = ""; resarr = []; for (i = 0; i < a.length; i++) { if (a[i] == " " || i == a.length - 1) { res += resarr.reverse().join("") + " "; resarr = []; } else { resarr.push(a[i]); } } document.body.appendChild(document.createTextNode(res))
你也可以尝试更短的时间
var a = "who all are coming to the party and merry around in florida"; var res = a.split(' ').map(function(text) { return text.split('').reverse().join('') }).join(' '); document.body.appendChild(document.createTextNode(res))