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

时间:2017-04-05 21:33:39

标签: javascript angularjs arrays object underscore.js

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

["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'。任何人都可以让我知道如何实现这一目标。

2 个答案:

答案 0 :(得分:3)

您可以使用Array#mapString#split仅返回每个元素-后面的文字。

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

答案 1 :(得分:2)

你也可以试试这个;



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