HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/vhost/disk-apps/pwa.sports-crowd.com/node_modules/object-path/benchmark.js
var Benchpress = require('@mariocasciaro/benchpress')
var benchmark = new Benchpress()
var op = require('./')

var testObj = {
  level1_a: {
    level2_a: {
      level3_a: {
        level4_a: {
        }
      }
    }
  }
}

var testObj2

benchmark
  .add('get existing', {
    iterations: 100000,
    fn: function() {
      op.get(testObj, ['level1_a', 'level2_a', 'level3_a', 'level4_a'])
    }
  })
  .add('get non-existing', {
    iterations: 100000,
    fn: function() {
      op.get(testObj, ['level5_a'])
    }
  })
  .add('push', {
    iterations: 100000,
    fn: function() {
      op.push(testObj, ['level1_a', 'level2_a', 'level3_a', 'level4_a', 'level5_a'], 'val')
    }
  })
  .add('set non existing', {
    iterations: 100000,
    fn: function() {
      op.set(testObj2, ['level1_a', 'level2_b', 'level3_b', 'level4_b', 'level5_b'], 'val')
    },
    beforeEach: function() {
      testObj2 = {}
    }
  })
  .add('set existing', {
    iterations: 100000,
    fn: function() {
      op.set(testObj, ['level1_a', 'level2_a', 'level3_a', 'level4_a', 'level5_b'], 'val')
    }
  })
  .run()