HEX
Server: Apache
System: Linux server.instantlogomakers.com 5.14.0-427.42.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Nov 1 14:58:02 EDT 2024 x86_64
User: s2spw (1156)
PHP: 8.1.34
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/node_modules/pm2/node_modules/fclone/bench/loopobj.js
'use strict'
const Benchmark = require('benchmark')
const suite = new Benchmark.Suite

let obj = process.env

suite
.add('for in', function() {
  for(let i in obj) {
    let o = obj[i]
  }
})
.add('while --', function() {
  let keys = Object.keys(obj)
  let l = keys.length
  while(l--) {
    let o = obj[keys[l]]
  }
})
.add('while shift', function() {
  let keys = Object.keys(obj)
  let k

  while(k = keys.shift()) {
    let o = obj[k]
  }
})
.on('cycle', function(event) {
  console.log(String(event.target))
})
.on('complete', function() {
  console.log('Fastest is ' + this.filter('fastest').map('name'))
})
.run({ 'async': true })