..:: Source code - 056global_properties_node.js ::..

/**
 * List all 'global' properties
 */
var property;

for (property in global) {
  if (global.hasOwnProperty(property)) {
    console.log("global." + property + " = " + global[property]);
  }
}
 

..:: NodeJS Console - 056global_properties_node.js ::..

$ node 056global_properties_node.js
global.global = [object global]
global.clearImmediate = function clearImmediate(immediate) {
  if (!immediate || immediate._destroyed)
    return;

  immediateInfo[kCount]--;
  immediate._destroyed = true;

  if (immediate[kRefed] && --immediateInfo[kRefCount] === 0) {
    // We need to use the binding as the receiver for fast API calls.
    binding.toggleImmediateRef(false);
  }
  immediate[kRefed] = null;

  if (destroyHooksExist() && immediate[async_id_symbol] !== undefined) {
    emitDestroy(immediate[async_id_symbol]);
  }

  immediate._onImmediate = null;

  immediateQueue.remove(immediate);
}
global.setImmediate = function setImmediate(callback, arg1, arg2, arg3) {
  validateFunction(callback, 'callback');

  let i, args;
  switch (arguments.length) {
    // fast cases
    case 1:
      break;
    case 2:
      args = [arg1];
      break;
    case 3:
      args = [arg1, arg2];
      break;
    default:
      args = [arg1, arg2, arg3];
      for (i = 4; i < arguments.length; i++) {
        // Extend array dynamically, makes .apply run much faster in v6.0.0
        args[i - 1] = arguments[i];
      }
      break;
  }

  return new Immediate(callback, args);
}
global.clearInterval = function clearInterval(timer) {
  // clearTimeout and clearInterval can be used to clear timers created from
  // both setTimeout and setInterval, as specified by HTML Living Standard:
  // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-setinterval
  clearTimeout(timer);
}
global.clearTimeout = function clearTimeout(timer) {
  if (timer && timer._onTimeout) {
    timer._onTimeout = null;
    unenroll(timer);
    return;
  }
  if (typeof timer === 'number' || typeof timer === 'string') {
    const timerInstance = knownTimersById[timer];
    if (timerInstance !== undefined) {
      timerInstance._onTimeout = null;
      unenroll(timerInstance);
    }
  }
}
global.setInterval = function setInterval(callback, repeat, arg1, arg2, arg3) {
  validateFunction(callback, 'callback');

  let i, args;
  switch (arguments.length) {
    // fast cases
    case 1:
    case 2:
      break;
    case 3:
      args = [arg1];
      break;
    case 4:
      args = [arg1, arg2];
      break;
    default:
      args = [arg1, arg2, arg3];
      for (i = 5; i < arguments.length; i++) {
        // Extend array dynamically, makes .apply run much faster in v6.0.0
        args[i - 2] = arguments[i];
      }
      break;
  }

  const timeout = new Timeout(callback, repeat, args, true, true);
  insert(timeout, timeout._idleTimeout);

  return timeout;
}
global.setTimeout = function setTimeout(callback, after, arg1, arg2, arg3) {
  validateFunction(callback, 'callback');

  let i, args;
  switch (arguments.length) {
    // fast cases
    case 1:
    case 2:
      break;
    case 3:
      args = [arg1];
      break;
    case 4:
      args = [arg1, arg2];
      break;
    default:
      args = [arg1, arg2, arg3];
      for (i = 5; i < arguments.length; i++) {
        // Extend array dynamically, makes .apply run much faster in v6.0.0
        args[i - 2] = arguments[i];
      }
      break;
  }

  const timeout = new Timeout(callback, after, args, false, true);
  insert(timeout, timeout._idleTimeout);

  return timeout;
}
global.queueMicrotask = function queueMicrotask(callback) {
  validateFunction(callback, 'callback');

  const asyncResource = new AsyncResource(
    'Microtask',
    defaultMicrotaskResourceOpts,
  );
  asyncResource.callback = callback;

  enqueueMicrotask(FunctionPrototypeBind(runMicrotask, asyncResource));
}
global.structuredClone = function structuredClone() { [native code] }
global.atob = function atob(input) {
  // The implementation here has not been performance optimized in any way and
  // should not be.
  // Refs: https://github.com/nodejs/node/pull/38433#issuecomment-828426932
  if (arguments.length === 0) {
    throw new ERR_MISSING_ARGS('input');
  }

  input = `${input}`;
  let nonAsciiWhitespaceCharCount = 0;
  let equalCharCount = 0;

  for (let n = 0; n < input.length; n++) {
    const index = ArrayPrototypeIndexOf(
      kForgivingBase64AllowedChars,
      StringPrototypeCharCodeAt(input, n));

    if (index > 4) {
      // The first 5 elements of `kForgivingBase64AllowedChars` are
      // ASCII whitespace char codes.
      nonAsciiWhitespaceCharCount++;

      if (index === kEqualSignIndex) {
        equalCharCount++;
      } else if (equalCharCount) {
        // The `=` char is only allowed at the end.
        throw lazyDOMException('Invalid character', 'InvalidCharacterError');
      }

      if (equalCharCount > 2) {
        // Only one more `=` is permitted after the first equal sign.
        throw lazyDOMException('Invalid character', 'InvalidCharacterError');
      }
    } else if (index === -1) {
      throw lazyDOMException('Invalid character', 'InvalidCharacterError');
    }
  }

  let reminder = nonAsciiWhitespaceCharCount % 4;

  // See #2, #3, #4 - https://infra.spec.whatwg.org/#forgiving-base64
  if (!reminder) {
    // Remove all trailing `=` characters and get the new reminder.
    reminder = (nonAsciiWhitespaceCharCount - equalCharCount) % 4;
  } else if (equalCharCount) {
    // `=` should not in the input if there's a reminder.
    throw lazyDOMException('Invalid character', 'InvalidCharacterError');
  }

  // See #3 - https://infra.spec.whatwg.org/#forgiving-base64
  if (reminder === 1) {
    throw lazyDOMException(
      'The string to be decoded is not correctly encoded.',
      'InvalidCharacterError');
  }

  return Buffer.from(input, 'base64').toString('latin1');
}
global.btoa = function btoa(input) {
  // The implementation here has not been performance optimized in any way and
  // should not be.
  // Refs: https://github.com/nodejs/node/pull/38433#issuecomment-828426932
  if (arguments.length === 0) {
    throw new ERR_MISSING_ARGS('input');
  }
  input = `${input}`;
  for (let n = 0; n < input.length; n++) {
    if (input[n].charCodeAt(0) > 0xff)
      throw lazyDOMException('Invalid character', 'InvalidCharacterError');
  }
  const buf = Buffer.from(input, 'latin1');
  return buf.toString('base64');
}
global.performance = [object Performance]
global.fetch = function fetch(input, init = undefined) {
      return lazyUndici().fetch(input, init);
    }
global.crypto = [object Crypto]
$ps -aux | grep node (list all node processes)
sasa         831  0.4  0.4 1300928 72180 ?       Ssl  Jun15   7:35 node /home/sasa/.pm2/modules/pm2-logrotate/node_modules/pm2-logr
sasa         843  0.4  0.6 11696264 101184 ?     Ssl  Jun15   6:57 node /home/sasa/dex8/dex8-api/starter.js
sasa         858  0.3  0.3 1032464 60852 ?       Ssl  Jun15   5:32 node /home/sasa/regoch/regoch-www/server
sasa         867  0.3  0.3 1292724 58952 ?       Ssl  Jun15   5:25 node /home/sasa/dex8/dex8-panel/server/index.js
sasa         886  0.7  0.5 11819416 92256 ?      Ssl  Jun15  12:16 node /home/sasa/dex8/dex8-www/server/index.js
sasa         888  0.3  0.4 11789848 74680 ?      Ssl  Jun15   5:51 node /home/sasa/mikosoft_hr/www-mikosoft-hr/server/index.js
sasa         904  0.6  0.4 1329612 81796 ?       Ssl  Jun15   9:55 node /home/sasa/mikosoft-info/api-mikosoft-info/starter.js
sasa         910  0.3  0.3 1295860 63932 ?       Ssl  Jun15   5:26 node /home/sasa/mikosoft-info/www-mikosoft-info/server/index.js
sasa         969  0.3  0.3 1028148 55188 ?       Ssl  Jun15   5:21 node /home/sasa/dex8/dex8-kiosk/server/index.js
sasa         970  0.4  0.5 11817212 98328 ?      Ssl  Jun15   7:30 node /home/sasa/mikosoft-info/dodo-mikosoft-info/server/index.js
sasa        1010  0.4  0.5 1138968 92484 ?       Ssl  Jun15   6:57 node /home/sasa/voovuu/voovuu-api/starter.js
sasa        1016  0.6  0.6 11809128 105724 ?     Ssl  Jun15   9:43 node /home/sasa/voovuu/voovuu-pub/server/index.js
sasa        1086  0.3  0.4 11595744 74948 ?      Ssl  Jun15   5:45 node /home/sasa/@mikosoft/dodo-examples/server/index.js
sasa        1089  0.3  0.3 1099612 64628 ?       Ssl  Jun15   5:36 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1159  0.3  0.3 1099616 65172 ?       Ssl  Jun15   5:35 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1160  0.3  0.3 1099356 64464 ?       Ssl  Jun15   5:35 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1241  0.3  0.3 1100952 63008 ?       Ssl  Jun15   5:33 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1242  0.3  0.4 22277820 76272 ?      Ssl  Jun15   5:49 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1323  0.3  0.3 1099356 63784 ?       Ssl  Jun15   5:34 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1324  0.3  0.3 1099616 63816 ?       Ssl  Jun15   5:34 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1398  0.3  0.3 1099360 63716 ?       Ssl  Jun15   5:33 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1400  0.3  0.3 1099356 63808 ?       Ssl  Jun15   5:35 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1465  0.3  0.3 1099616 64448 ?       Ssl  Jun15   5:32 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1475  0.3  0.6 11809828 105280 ?     Ssl  Jun15   6:10 node /home/sasa/mikosoft-info/crypto-mikosoft-info/server/index.
www-data   77802  0.0  0.0   2608   600 ?        S    05:15   0:00 sh -c ps -aux | grep node
www-data   77804  0.0  0.0   3304   656 ?        S    05:15   0:00 grep node