logo

Forskjellen mellom indexof og søk i JavaScript

Introduksjon:

JavaScript er et mye brukt programmeringsspråk, og det gir flere innebygde metoder for å manipulere strenger. To av de mest brukte metodene for å søke i en streng for et spesifikt tegn eller understreng er oversikt over() og Søk() . Selv om disse to metodene kan virke like i funksjonalitet, har de noen viktige forskjeller. I denne artikkelen vil vi utforske forskjellene mellom indexOf() og search() i JavaScript.

indexOf() Metode:

De oversikt over() metode er en innebygd JavaScript-funksjon som brukes til å finne indeksen for den første forekomsten av en understreng i en gitt streng. Denne metoden returnerer indeksen for den første forekomsten av den angitte delstrengen, fra begynnelsen av strengen. Hvis delstrengen ikke blir funnet, returnerer metoden -1 .

Syntaks:

Syntaksen for å bruke oversikt over() metoden er som følger:

 string.indexOf(searchValue[, fromIndex]) 

Her, streng er strengen som skal søkes i, søkeverdi er verdien å søke etter, og fra indeksen er den valgfrie parameteren som spesifiserer posisjonen i strengen der søket skal begynne. Hvis fra indeksen ikke er gitt, den oversikt over() metoden starter søket fra begynnelsen av strengen. Hvis fra indeksen er en negativ verdi, starter søket fra slutten av strengen.

Eksempel:

ny linje python

La oss ta et eksempel for å forstå oversikt over() metode:

 let str = 'JavaScript is a powerful programming language'; let index = str.indexOf('powerful'); console.log(index); 

Produksjon:

 16 

Forklaring:

Her, den indexOf() metode søker etter den første forekomsten av ordet 'kraftig' i strengen 'JavaScript er et kraftig programmeringsspråk' . Siden ordet 'kraftig' vises i indeksen 16 , returnerer metoden 16 .

søk() Metode:

De søk()-metoden er også en innebygd JavaScript-funksjon som brukes til å finne indeksen til det første tegnet i en understreng innenfor en gitt streng. Denne metoden returnerer indeksen for den første forekomsten av den angitte delstrengen, fra begynnelsen av strengen. Hvis delstrengen ikke blir funnet, returnerer metoden -1 .

Syntaks:

Syntaksen for å bruke søk()-metoden er som følgende:

 string.search(regexp) 

Her, streng er strengen som skal søkes i, og regexp er den vanlig uttrykk mønster å søke etter. Hvis vanlig uttrykk mønsteret er funnet Søk() metoden returnerer indeksen til det første tegnet i samsvaret. Hvis det regulære uttrykksmønsteret ikke blir funnet, returnerer metoden -1 .

Eksempel:

La oss ta et eksempel for å forstå Søk() metode:

 let str = 'JavaScript is a powerful programming language'; let index = str.search(/powerful/); console.log(index); 

Produksjon:

 16 

Forklaring:

Her, den Søk() metoden søker etter vanlig uttrykk mønster /kraftig/ i strengen 'JavaScript er et kraftig programmeringsspråk' . Siden det regulære uttrykksmønsteret samsvarer med ordet 'kraftig' , returnerer metoden 16 .

Forskjeller mellom indexOf() og search():

Selv om begge deler oversikt over() og Søk() metoder brukes til å søke etter en delstreng innenfor en gitt streng, de har noen få viktige forskjeller. La oss ta en titt på disse forskjellene side ved side:

indexOf() metode search() Metode
oversikt over() metode søker etter en spesifisert delstreng innenfor en gitt streng. Søk() metoden søker etter et regulært uttrykksmønster innenfor en gitt streng.
indexOf()-metoden returnerer indeksen for den første forekomsten av den angitte delstrengen. Search()-metoden returnerer indeksen til det første tegnet i samsvaret.
indexOf()-metoden støtter ikke regulære uttrykk. Search()-metoden støtter regulære uttrykk.
indexOf()-metoden kan godta en valgfri parameter fra Indeks for å starte søket fra en bestemt indeks. Search()-metoden godtar ikke en valgfri parameter for å starte søket fra en bestemt indeks.
indexOf()-metoden er raskere enn search()-metoden fordi den ikke støtter regulære uttrykk. Search()-metoden er tregere enn indexOf()-metoden fordi den støtter regulære uttrykk.
indexOf()-metoden skiller mellom store og små bokstaver. Search()-metoden skiller også mellom store og små bokstaver som standard, men kan gjøres ufølsom for store og små bokstaver ved å bruke /i flagg i det regulære uttrykksmønsteret.
indexOf()-metoden er mye brukt for enkle strengsøk. Search()-metoden er mye brukt for kompleks mønstermatching ved bruk av regulære uttrykk.

Konklusjon:

Avslutningsvis begge deler oversikt over() og Søk() metoder er nyttige for å søke etter en delstreng innenfor en gitt streng. Imidlertid har de noen få viktige forskjeller som gjør dem egnet for forskjellige brukstilfeller. indexOf()-metoden er raskere og mer egnet for enkle strengsøk, mens search()-metoden støtter regulære uttrykk og er mer egnet for kompleks mønstermatching. Det er viktig å velge riktig metode basert på de spesifikke kravene til programmet ditt.