小编Tim*_*Tim的帖子

使用 array.map() 从对象数组中查找元素

我有一个对象数组,我想返回所有ids 的数组。例如:

const arr = [
    {Locations:[{id:2129, Name: 'testAA'}, {id:3431, Name: 'testAB'}, {id:4373, Name: 'testAC'}]},
    {Locations:[{id:2545, Name: 'testBA'}, {id:3431, Name: 'testBB'}]}
];     
Run Code Online (Sandbox Code Playgroud)

我想返回:[2129, 3431, 4373, 2545, 3431]

我尝试过以下操作:

arr.map((value) => {
    let newarray = [];
    return newarray += value['Locations'].map(ID => ID.id);
});
Run Code Online (Sandbox Code Playgroud)

这将返回:["2129,3431,4373", "2545,3431"]

我如何组合这两个数组?

javascript arrays ecmascript-6

3
推荐指数
1
解决办法
6948
查看次数

使用正则表达式在不在锚中的页面上查找电话号码

我有此正则表达式表达式,用于搜索电话号码模式:

[(]?\d{3}[)]?[(\s)?.-]\d{3}[\s.-]\d{4}
Run Code Online (Sandbox Code Playgroud)

这与以下格式的电话号码匹配:

123 456 7890
(123)456 7890
(123) 456 7890
(123)456-7890
(123) 456-7890
123.456.7890
123-456-7890
Run Code Online (Sandbox Code Playgroud)

我想扫描整个页面(使用JavaScript)以查找此匹配项,但不包括锚点中已存在的此匹配项。找到匹配项后,我要将电话号码转换为移动设备的点击通话链接:

(123) 456-7890 --> <a href="tel:1234567890">(123) 456-7890</a>
Run Code Online (Sandbox Code Playgroud)

我很确定我需要做一个否定查询。我已经尝试过了,但这似乎不是正确的主意:

(?!.*(\<a href.*?\>))[(]?\d{3}[)]?[(\s)?.-]\d{3}[\s.-]\d{4}
Run Code Online (Sandbox Code Playgroud)

javascript regex negative-lookahead

2
推荐指数
1
解决办法
861
查看次数