js-levenshtein
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/js-levenshtein package

    1.1.6 • Public • Published

    js-levenshtein Build Status

    A very efficient JS implementation calculating the Levenshtein distance, i.e. the difference between two strings.

    Based on Wagner-Fischer dynamic programming algorithm, optimized for speed and memory

    • use a single distance vector instead of a matrix
    • loop unrolling on the outer loop
    • remove common prefixes/postfixes from the calculation
    • minimize the number of comparisons

    Install

    $ npm install --save js-levenshtein
    

    Usage

    const levenshtein = require('js-levenshtein');
     
    levenshtein('kitten', 'sitting');
    //=> 3

    Benchmark

    $ npm run bench
      
                          50 paragraphs, length max=500 min=240 avr=372.5
                 162 op/s » js-levenshtein
                  98 op/s » talisman
                  94 op/s » levenshtein-edit-distance
                  85 op/s » leven
                  39 op/s » fast-levenshtein
    
                          100 sentences, length max=170 min=6 avr=57.5
               3,076 op/s » js-levenshtein
               2,024 op/s » talisman
               1,817 op/s » levenshtein-edit-distance
               1,633 op/s » leven
                 800 op/s » fast-levenshtein
    
                          2000 words, length max=20 min=3 avr=9.5
               3,119 op/s » js-levenshtein
               2,416 op/s » talisman
               2,141 op/s » levenshtein-edit-distance
               1,855 op/s » leven
               1,260 op/s » fast-levenshtein
    

    Benchmarks was performed with node v8.12.0 on a MacBook Pro 15", 2.9 GHz Intel Core i9

    License

    MIT © Gustaf Andersson

    Install

    npm i js-levenshtein

    DownloadsWeekly Downloads

    2,157,908

    Version

    1.1.6

    License

    MIT

    Unpacked Size

    5.64 kB

    Total Files

    4

    Last publish

    Collaborators

    • ggustf