为数组中尚未包含前缀的所有值添加前缀[关闭]

问题描述 投票:0回答:1

我有一个 JavaScript 数组:

var arr = ["images/1.jpg", "2.jpg", "some.jpg"];

我想将前缀

images/
添加到所有缺少它的项目中,以便已经具有前缀的值不会更改。

结果应该是这样的:

var newArr = ["images/1.jpg", "images/2.jpg", "images/some.jpg"];
javascript arrays prefix
1个回答
4
投票

您可以使用

String.prototype.startsWith()
仅添加前缀(如果尚未添加)。

在下面的示例中,我使用

Array.prototype.map()
String.prototype.startsWith()
仅添加前缀(如果前缀尚不存在)。

const magic = (arr, prefix) => arr 
  .map(str => str.startsWith(prefix) ? str : `${prefix}${str}`)

console.log(magic(["images/1.jpg", "2.jpg", "some.jpg"], 'images/'))

© www.soinside.com 2019 - 2024. All rights reserved.