1

私は

var array1 = ["something9","something10","something11"] 

array1の各要素の末尾の数字からarray2を作成したいだけです。

charAt() を使用して最後の文字を取得できましたが、各要素ではなく array1 から最初の要素しか取得できませんでした...

これはJavascriptで可能ですか?

4

2 に答える 2

4

2 番目の配列を作成するには、最初の配列を反復処理する必要があります。

Array.map()を使用して、単純な反復でそれを行うことができます

var array1 = ["something9", "something10", "something11", 'asdf'];
var array2 = array1.map(function(value) {
  var match = value.match(/\d+$/);
  return match ? match[0] : ''
});

snippet.log(JSON.stringify(array2));
console.log(array2)
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>

于 2015-08-19T10:10:16.920 に答える
1

以下をチェック

var array1 = ["somet34hing9","something10","something11"];
var array2 = array1.map(function(ele){
    return ele.match(/[0-9]+$/g,"");
});
alert(array2);

デモ

于 2015-08-19T10:11:43.343 に答える