nahraďte poslední čárku tečkou v řetězci

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ážila NaN 0 a záporné hodnoty se počítají zpětně od konce.
  • Pokud je hodnota větší než stringName.length , bude to považovat za stringName.length v obou funkcích.
  • substring() vyměňte argumenty, pokud indexStart je větší než indexEnd , slice() vrátí prázdný řetězec.