Chcete-li mírně upravit řetězec, jako je nahrazení jeho prvního znaku velkým nebo posledního znaku z čárky na tečku, existují dva způsoby, jak toho dosáhnout.
použijte replace()
s regulárním výrazem
Za pozornost stojí dvě věci:
- bez použití regulárního výrazu bude nahrazen pouze první odpovídající podřetězec.
replace()
funkce vrátí nový řetězec a ponechá starý řetězec beze změny.
// replace the last comma to period
let names = "anne, ben, carol, dennis, evans,";
names = names.replace(/,$/, '.');
// anne, ben, carol, dennis, evans.
použijte slice()
a připojit
// replace the last comma to period
let names = "anne, ben, carol, dennis, evans,";
names = names.slice(0, -1) + '.';
// anne, ben, carol, dennis, evans.
slice(indexStart, indexEnd)
a substring(indexStart, indexEnd)
jsou téměř totožné s několika malými rozdíly:
indexEnd
je volitelný v obou funkcích, pokud není specifikován, bude extrahován na konec řetězce. V opačném případě je to první znak, který má být vyloučen .- Pokud je hodnota menší než 0 nebo
NaN
,substring()
by uvažovalo 0.slice()
by zvážilaNaN
0 a záporné hodnoty se počítají zpětně od konce. - Pokud je hodnota větší než
stringName.length
, bude to považovat zastringName.length
v obou funkcích. substring()
vyměňte argumenty, pokudindexStart
je větší nežindexEnd
,slice()
vrátí prázdný řetězec.