所以我正在做一個練習,我必須對給定的字符串進行排序。字符串中的每個單詞都包含一個數字(寫成'H3llo')。字符串的每個字中的數字應按照要返回的新字符串中的數字排列。麻煩用Javascript while循環,我做錯了什麼?
例如,如果我的輸入是「is2 Thi1s T4est 3a」,那麼我的函數應該返回「Thi1s is2 3a T4est」。
我幾乎破解它,但我的輸出是不完整的。這裏是我的代碼:
function order(words) {
var lst = words.split(' ');
var count = 0;
var n = count + 1;
var s_n = n.toString();
var new_l = [];
while (count < lst.length) {
if (lst[count].includes(s_n) === true) {
new_l.push(lst[count])
}
count++
}
return new_l.join(' ');
}
當我測試了一下,而不是得到:
console.log(order("is2 Thi1s T4est 3a"));
>>> 'Thi1s is2 3a T4est'
我得到這個:
console.log(order("is2 Thi1s T4est 3a"));
>>> 'Thi1s'
任何人都可以向我解釋什麼,我做錯了什麼?
你應該早晚學習['Array#sort'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort)。 –
需要在循環內設置'n'和's_n'。 – Malk
做了迄今爲止仍然不起作用的所有建議 – MountainSlayer