私は与えられた文字列をソートする練習をしています。文字列の各単語には、その中に数字が含まれています(この 'H3llo'のように書かれています)。文字列の各単語に含まれる数字は、返される新しい文字列の番号に従って、順番に配置する必要があります。ループ中にJavascriptで問題が発生しました。何が間違っていますか?
たとえば、入力が "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'
を誰も私が間違ってやっているものを私に説明できますか?
遅かれ早かれ、あなたが学ぶ必要がある[ 'アレイ#sort'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort)。 –
'n'と' s_n'はループ内で設定する必要があります。 @MalkあなたはS_Nを変更することはありませんあなたは 'ループ – Malk
は、これまでのところ、まだ – MountainSlayer