如何从javascript中的字符串末尾提取一个整数

sac*_*024 3 javascript parseint

我们如何从这样的数据集中提取整数(键)?

data : {
    DAYS7: 234,
    DAYS21: 3456,
    DAYS35: 23456
}
Run Code Online (Sandbox Code Playgroud)

我想将此数据转换为两个数组[7, 21, 35][234, 3456, 23456].

代码:

var a = [], b = [];
for (var key in data) {
  a.push(getIntPart(key));
  b.push(data[key]);
}

function getIntPart(key) {
  key = key.substring(4); //Remove DAYS word
  return parseInt(key);
} 
Run Code Online (Sandbox Code Playgroud)

我认为key.substring(4)这不是正确的方法,因为它会因其他一些键而失败。请建议我应该如何解决这个问题。

Vis*_*ioN 5

您可以使用正则表达式

key = (key.match(/\d+$/) || []).pop();
Run Code Online (Sandbox Code Playgroud)

这将匹配字符串\d+末尾 ( $) 的所有数字 ( ) key