Autor Zpráva
ondra256
Profil
Ahoj,

mám html stránku, kde používám javascript a volám replaceAll funkci. Udělal jsem android aplikaci, která je jen webView té stránky. Ale ve chvíli kdy se zavolá ten javascript tak to spadne. V prohlížeči na mobilu i desktopu mě to normálně jede.

String('ahoj').replaceAll('{{count}}', String(options?.count))

To slovíčko 'ahoj' tam mám už napsané natvrdo abych měl jistotu že je to string, ještě ho přetypuju na String a stejně funkce replaceAll neexistuje. Přitom má podporu ve všech prohlížečích.

Vyhodí chybu:

TypeError: String(...).replaceAll is not a function",

Netušíte v čem je zakopaný pes?

Dík
Keeehi
Profil
Podle toho co jsem vygooglil, funkce repaceAll byla do standardu přidaná snad teprve nedávno (snad 2021). Takže se to ještě nemuselo do telefonů dostat. Obzvlášť těch starších. Použij klasický replace s modifkátorem g.
'ahoj {{count}}'.replace(new RegExp('{{count}}', 'g'), options?.count)
ondra256
Profil
Keeehi:
Aha, to mě vůbec nenapadlo hledat. Každopádně udělal jsem jak jsi psal a pomohlo to.
Mnohokrát děkuju :-)
JsonKody
Profil
Keeehi:
vypada to ze nepodporovany je hlavne IE, ktery se dnes stejne jiz nepodporuje temer nikde.

Can I Use: replaceAll
Radek9
Profil
JsonKody:
… no a potom zjevně i některé implementace WebView, které třeba běží na několik let starém Chromiu. :-) Can I Use je dobrý nástroj, pokud tě zajímají opravdu jenom prohlížeče. Tyhle embedded řešení obecně bývají pozadu.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0