将对象数组转换为数组,但格式不同。

Convert array of objects into an array but in a different format.

我有一个对象数组,如下所示。我做了一个 console.log(values);并得到以下结果

["15- S&P", "us- ex US", "al- ex CL"]

0:"15- S&P"
1:"us- ex US"
2:"al- ex CL"
length:3
__proto__:Array(0)

我希望输出数组中的值如下。

[S&P, ex US, ex CL]

'-' 之前的所有值都被删除,'-' 之后的值被取出并放入数组中。例如'15- S&P' 更改为 'S&P'。任何人都可以让我知道如何实现这一目标。

您可以使用 Array#mapString#split 来 return 只是每个元素的 - 符号后的文本。

var arr = ["15- S&P", "us- ex US", "al- ex CL"],
    res = arr.map(v => v.split("- ")[1]);
    
    console.log(res);

你也可以试试这个;

var arr = ["15- S&P", "us- ex US", "al- ex CL"],
    res = arr.map(s => s.replace(/\w+-\s*([\w&\s]+)/,""));
console.log(res);