2

これはどのように行うことができますか?ユーザーが整数 14865 を入力したとします。次に、その整数を切り取り、[1, 4, 8, 6, 5] のようにまったく同じ順序で配列に入れるにはどうすればよいでしょうか。%10 メソッドを使用してみましたが、前後に戻ります。

4

2 に答える 2

3

1 つの方法は、整数を文字列に変換し、文字列.split()メソッドを使用して各数字を含む配列を作成することです。その時点で、配列の各要素は文字列になるため、配列をループして、各配列要素を文字列から数値に変換します (または単に を使用します.map())。

var x = 14865,
    a = x.toString().split("").map(function(v) { return +v; });

// a is now [1, 4, 8, 6, 5]

整数がユーザーによって入力された場合、その.toString()部分をスキップできることに注意してください。これは、明示的に数値に変換しない限り、既に文字列になっているためです。

PS「%10メソッド」は「前から後ろへ」値を返すと述べました-そのメソッドをどのように実装したかは示していませんが、現在のコードが一度に1つずつ数字を抽出して配列の最後に追加する場合「前に戻る」方法で配列の先頭に数字を挿入して、その問題を回避してみませんか?.unshift()

于 2013-05-02T11:47:12.180 に答える