Glavni problem sa Ukloni sve osim brojeva je taj što uklanja sav tekst, uključujući i formatiranje, iz dokumenta. To može otežati čitanje i potencijalno oštetiti podatke ako nisu pravilno očišćeni.
from a string var str = "abc123"; var newStr = str.replace(/[^0-9]/g, "");
Ovaj kod uzima string “abc123” i koristi regularni izraz za zamjenu bilo kojeg znaka koji nije broj sa praznim nizom. Dakle, krajnji rezultat je niz "123".
Nastava
Postoji mnogo različitih vrsta klasa u JavaScriptu. Mogu se podijeliti u dvije glavne kategorije: objektno orijentisane i funkcionalne.
Objektno orijentisane klase su izgrađene oko koncepta objekata. Objekt je zbirka svojstava i metoda kojima se može pristupiti pomoću operatora točka. Na primjer, sljedeći kod kreira objekt nazvan person koji ima svojstvo zvano name i metodu pod nazivom sayName() :
var person = { name: “John”, sayName: function() { console.log(“Zdravo, moje ime je ” + this.name); } };
Funkcionalne klase su izgrađene oko koncepta funkcija. Funkcija je blok koda koji se može izvršiti pozivanjem s jednim ili više argumenata. Na primjer, sljedeći kod kreira funkciju zvanu addNumbers() koja uzima dva argumenta, x i y:
function addNumbers(x, y) { return x + y; }
I objektno orijentirane i funkcionalne klase mogu sadržavati svojstva i metode, ali se razlikuju po načinu na koji rukuju nasljeđivanjem. U objektno orijentiranim klasama, nasljeđivanje znači da možete kreirati nove objekte koji se temelje na postojećim objektima korištenjem ključne riječi extends. Na primjer, možete kreirati novi objekt osobe proširenjem objekta osobe prikazanog iznad:
var newPerson = Object.create(person); newPerson.name = “Marija”;
Argumenti
Argumenti u JavaScriptu se uvijek prosljeđuju po vrijednosti. To znači da se argumenti kopiraju kada se proslijede funkciji. Ovo može biti problem ako želite da prenesete referencu na argument.
Na primjer, razmotrite sljedeći kod:
funkcija add(a, b) { return a + b; }
Ako pozovete add sa dva argumenta, prvi argument će biti dodijeljen prvoj varijabli, a drugi argument će biti dodijeljen drugoj varijabli. Međutim, ako želite prenijeti referencu na argument, morate koristiti drugačiji pristup:
funkcija add(ref A, ref B) { return A + B; }