簡體   English   中英

如何替換數組中項目中的單個字符?

[英]How do I replace single character in item in array?

我一直在涉足這個問題,我很困惑。 所以我有這個數組名稱 = ["Fern","Alexa","Constance","Daniella","Connie","Flora","Hannah","Maddie"];

我想將名字的第一個字母更改為“b”,然后返回整個內容,而不會完全破壞 Ex 的名稱:而不是“Fern”,而是“Bern”

有人可以幫忙嗎。 我自己嘗試了許多不同的方法和策略,我無法弄清楚。 請協助。

謝謝你

這應該有效。

 let names = ["Fern", "Alexa", "Constance", "Daniella", "Connie", "Flora", "Hannah", "Maddie"]; let modified = names.map(e => e.replace(e[0], 'B')) console.log(modified);

使用 for of 循環進行迭代以訪問每個項目,然后應用替換方法。

 var names = ["Fern","Alexa","Constance","Daniella","Connie","Flora","Hannah","Maddie"]; var newNames = []; for(let el of names) { newNames.push(el.replace(el[0], 'B')); } console.log(newNames);

使用mapslice和模板字符串

 const data = ["Fern","Alexa","Constance","Daniella","Connie","Flora","Hannah","Maddie"]; const update = (arr, char) => arr.map(str => `${char}${str.slice(1)}`); console.log(update(data, 'B'));

您說您只想更改名字的第一個字母而不更改原始名稱數組。

首先,克隆數組: namesClone=names.slice()
如果您不使用slice ,則namesnamesClone具有相同數據的不同變量名,因此更改為任何一個都會影響另一個。

訪問名字並將其設置為 "B" + rest: namesClone[0]="B"+namesClone[0].slice(1)
slice(1)返回從 char 1 到 end 的所有內容,沒有 char 0(在您的示例中為“F”)。

names沒有改變。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM