Fuse.js mänguväljak
Interaktiivne mänguväljak Fuse.js hägusotsingu teegi testimiseks ja katsetamiseks. Konfigureeri kõiki otsinguvalikuid ja näe reaalajas tulemusi.
Sisend
Väljund
| id | title | author | year | category |
|---|---|---|---|---|
| 1 | JavaScript: The Good Parts | Douglas Crockford | 2008 | Programming |
| 2 | Clean Code | Robert C. Martin | 2008 | Programming |
| 3 | The Pragmatic Programmer | Andrew Hunt | 1999 | Programming |
| 4 | Design Patterns | Gang of Four | 1994 | Software Engineering |
| 5 | Introduction to Algorithms | Thomas H. Cormen | 1990 | Computer Science |
| 6 | Code Complete | Steve McConnell | 1993 | Programming |
| 7 | Refactoring | Martin Fowler | 1999 | Software Engineering |
| 8 | The Mythical Man-Month | Frederick Brooks | 1975 | Project Management |
| 9 | Structure and Interpretation of Computer Programs | Harold Abelson | 1984 | Computer Science |
| 10 | Working Effectively with Legacy Code | Michael Feathers | 2004 | Programming |
Loe mind
Mis on hägus otsing?
Hägus otsing on otsimistehnika, mis leiab vasteid isegi siis, kui otsingupäring ei kattu täpselt tekstiga. Erinevalt täpsest otsingust, kus „apple“ sobib ainult „apple“‑ga, suudab hägus otsing leida „aple“ (trükiviga), „Apple“ (erinev suurtäht) või isegi „apples“ (mitmus). See toimib, arvutades kahe stringi sarnasuse, võttes arvesse trükivigu, õigekirjavigu, erinevaid tähemärkide suurusi ja väikeseid variatsioone. See on oluline kasutajasõbralike otsimiskogemuste loomiseks, kus kasutajad ei pea sisestama täiuslikult täpseid päringuid, et leida soovitud tulemus.
Kuidas Fuse.js töötab?
Fuse.js on JavaScripti teek, mis rakendab hägust otsingut ligikaudse stringi sobivusalgoritmiga. See töötab järgmiselt:
- Indekseerimine: Loob tõhusa andmestruktuuri teie otsitavast andmestikust
- Skoorimine: Arvutab sarnasuse skoori otsingupäringu ja iga kirje vahel (0,0 = täiuslik vaste, 1,0 = mitte ühtegi)
- Filtreerimine: Tagastab tulemused, mis vastavad lävekriteeriumidele
- Sorteerimine: Järjestab tulemused olulisuse järgi nende skooride põhjal
Teek kasutab konfigureeritavaid valikuid, nagu threshold (kui hägus otsing peaks olema), location (kus oodatakse vasteid) ja distance (kui kaugel oodatud asukohast otsida), andes arendajatele peenhäälestatud kontrolli otsingu käitumise üle.
Tööriista kirjeldus
Fuse.js Playground on interaktiivne testimiskeskkond Fuse.js‑i häguse otsingu teegile. See võimaldab arendajatel katsetada kõiki saadaolevaid otsingu konfiguratsioonivalikuid ja näha reaalajas tulemusi kohandatud või näidisandmetel. Saate konfigureerida otsingu võtmeid kohandatud kaaludega, kohandada põhilisi valikuid nagu tõstutundlikkus ja skoori kaasamine ning peenhäälestada täiustatud parameetreid nagu threshold, location ja distance. Tööriist pakub kohest visuaalset tagasisidet, näidates, kuidas konfiguratsiooni muutused mõjutavad otsingutulemusi, muutes selle ideaalseks otsingu funktsionaalsuse prototüüpimiseks enne rakendamist.
Funktsioonid
- Kohandatud andmete sisend: Laadi oma JSON‑andmed, et testida otsingu käitumist reaalse andmekoguga
- Konfigureeritavad otsingu võtmed: Määra, milliseid välju otsida, kohandatud kaalude prioriteetidega
- Reaalajas tulemused: Vaata kohest tagasisidet, kui muudad otsingupäringuid või valikuid
- Põhilised valikud: Kontrolli tõstutundlikkust, diakriitiliste märkide käsitlemist, sorteerimist ja skoori kuvamist
- Täiustatud peenhäälestus: Kohanda threshold‑i, location‑i, distance‑i, välja normaliseerimist ja muud
- Laiendatud otsingu süntaks: Testi keerukaid päringumustreid nagu prefiksotsing (^), täpne vaste (!), jne
- Tulemuste visualiseerimine: Vaata otsingutulemusi sorteeritavas tabelis koos valikuliste vaste skooridega
- Näidisandmekogum: Eel-laetud raamatukogu kohese testimise ja katsetamise jaoks
Näited
Lihtne otsing:
- Päring: "fantasy" → Leiab kõik raamatud fantaasia kategoorias
- Päring: "tolkien" → Leiab raamatud autorilt J.R.R. Tolkien
- Päring: "lord rings" → Leiab „The Lord of the Rings“, vaatamata puuduvaid sõnu
Hägus vaste:
- Päring: "hary poter" (trükivead) → Leiab endiselt „Harry Potter“
- Päring: "1984" → Leiab raamatu George Orwellilt
- Päring: "scifi" → Vastab kategooriale „Science Fiction“
Laiendatud otsing (kui lubatud):
- Päring: "^The" → Leiab pealkirjad, mis algavad sõnaga „The“
- Päring: "!Fantasy" → Täpne vaste kategooriale „Fantasy“
- Päring: "'Dune" → Leiab kirjed, mis sisaldavad sõna „Dune“
Seadistusvalikud
Otsingu võtmed:
- Määra, milliseid välju otsida (nt. title, author, category)
- Määra kaalud, et prioriseerida teatud välju (kõrgem kaal = olulisem)
Põhilised valikud:
- Case Sensitive: Vasta täpselt tähemärkide suurusele
- Include Score: Kuva relevantsuskoodid (0,0 = täiuslik, 1,0 = halb)
- Ignore Diacritics: Käsitle diakriitilisi märke nende baasmärgina (é = e)
- Sort Results: Järjesta tulemused relevantsuskoodi alusel
- Find All Matches: Jätka otsimist pärast esimese vaste leidmist
Täiustatud valikud:
- Min Match Char Length: Vähimad tähemärgid, mis on vajalikud vasteks (vaikimisi: 1)
- Location: Oodatav vaste asukoht tekstis (vaikimisi: 0 = algus)
- Threshold: Kui hägus otsing peaks olema, 0,0 (täpne) kuni 1,0 (väga hägus)
- Distance: Maksimaalne kaugus oodatud asukohast otsimiseks
- Use Extended Search: Luba täiustatud päringu süntaks (^, !, ', jne)
- Ignore Location: Ära arvesta asukohta vaste leidmisel
- Ignore Field Norm: Ära arvesta välja pikkust skoori arvutamisel
- Field Norm Weight: Kui palju mõjutab välja pikkus skoori
Kasutusjuhtumid
- Otsingu rakenduse testimine: Prototüübi loomine ja otsingu funktsionaalsuse valideerimine enne koodi kirjutamist
- API konfiguratsioon: Optimaalse Fuse.js‑i seadistuse määramine teie rakendusele
- Otsingu käitumise analüüs: Mõista, kuidas erinevad valikud mõjutavad tulemuste kvaliteeti
- Kliendi demonstratsioonid: Näidata sidusrühmadele, kuidas otsing käitub reaalse andmetega
- Fuse.js õppimine: Praktikalised katsetused teegi võimaluste mõistmiseks
- Andmestruktuuri testimine: Kontrolli, kas teie JSON‑andmestruktuur töötab häguse otsinguga
- Otsingu kvaliteedi häälestus: Peenhäälesta threshold‑i ja muid parameetreid parimate tulemuste saavutamiseks