[英]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);
使用map
, slice
和模板字符串
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
,則names
和namesClone
具有相同數據的不同變量名,因此更改為任何一個都會影響另一個。
訪問名字並將其設置為 "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.