文字列をソートする関数を作成する必要があります。文字列の各単語には1つの数字が含まれます。数字は1〜9(0はありません)です。Javascript注文時に未定義のメソッド 'indexOf'を呼び出せません
たとえば、入力が "is2 Thi1s T4est 3a"の場合、関数は "Thi1s is2 3a T4est"を返します。
私のコードは次のとおりです。
function order(words)
{
// ...
if(words == '')
{
return words;
}
var all_words = words.split(" ");
var checked_words = new Array();
var joined_words = "";
for(i = 1; i <= 9; i++)
{
//console.log(checked_words);
//checked_words[i-1] = all_words;
for(j = 1;j <= all_words.length; j++)
{
if(all_words[i-1].indexOf(i) != -1)
{
checked_words.push(all_words[i-1]);
if(i == (all_words.length))
{
joined_words = checked_words.join(" ");
return joined_words;
}
}
}
}
}
問題は、それが示すままである「はTypeError:順序で未定義のメソッド 『のindexOf』を呼び出すことはできません」。助けてくれてありがとう!
すべての 'I-1 'は、' J-1'でなければなりません。 –
なぜ 'i'は' 1'から '9'になりますか? 'j'が使われないのはなぜですか? – Oriol