1

我有一个

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

我只是想从array1中每个元素的尾随数字创建一个array2。

我设法使用 charAt() 获取最后一个字符,但我只能从 array1 获取第一个元素,而不是每个元素......

这在 Javascript 中是否可行?

4

2 回答 2

4

您需要遍历第一个数组以创建第二个数组。

您可以使用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 回答