Tests:
  • new Set(...)

    x
     
    const strings = ['russia', 'usa', 'russia', 'france', 'russia', 'spain'];
    let result = [];
    for(let i = 0; i < 100; ++i) {
      const cities = strings.reduce((acc, item) => {
        return [...acc, item];
      }, []);
      
      [...new Set(cities)];
    }
  • array.includes

     
    const strings = ['russia', 'usa', 'russia', 'france', 'russia', 'spain'];
    for(let i = 0; i < 100; ++i) {
      const cities = strings.reduce((acc, item) => {
        if (!acc.includes(item)) {
            return [...acc, item];
        }
        
        return acc;
      }, []);
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    new Set(...)
    array.includes

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 5 months ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
Chrome 130 on Windows
View result in a separate tab
Test name Executions per second
new Set(...) 19696.7 Ops/sec
array.includes 47255.2 Ops/sec