..:: 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        1194  0.4  0.4 1302684 79536 ?       Ssl  Oct24  38:04 node /home/sasa/.pm2/modules/pm2-logrotate/node_modules/pm2-logr
sasa        1200  0.8  0.8 11718928 134788 ?     Ssl  Oct24  69:13 node /home/sasa/dex8/dex8-api/starter.js
sasa        1207  0.3  0.4 1301396 68988 ?       Ssl  Oct24  28:44 node /home/sasa/regoch/regoch-www/server
sasa        1208  0.3  0.4 1299336 66228 ?       Ssl  Oct24  27:14 node /home/sasa/dex8/dex8-panel/server/index.js
sasa        1224  0.7  0.6 11824840 100160 ?     Ssl  Oct24  64:13 node /home/sasa/dex8/dex8-www/server/index.js
sasa        1236  0.4  0.5 11809036 93508 ?      Ssl  Oct24  36:04 node /home/sasa/mikosoft_hr/www-mikosoft-hr/server/index.js
sasa        1255  0.6  0.4 1328700 80804 ?       Ssl  Oct24  51:40 node /home/sasa/mikosoft-info/api-mikosoft-info/starter.js
sasa        1257  0.3  0.4 1300548 69204 ?       Ssl  Oct24  27:53 node /home/sasa/mikosoft-info/www-mikosoft-info/server/index.js
sasa        1289  0.3  0.3 1296500 63620 ?       Ssl  Oct24  27:09 node /home/sasa/dex8/dex8-kiosk/server/index.js
sasa        1292  0.4  0.5 11807468 88272 ?      Ssl  Oct24  37:25 node /home/sasa/mikosoft-info/dodo-mikosoft-info/server/index.js
sasa        1361  0.6  0.6 1155112 110452 ?      Ssl  Oct24  57:48 node /home/sasa/voovuu/voovuu-api/starter.js
sasa        1363  2.0  2.3 12147128 387304 ?     Ssl  Oct24 173:28 node /home/sasa/voovuu/voovuu-pub/server/index.js
sasa        1441  0.3  0.4 11793416 76592 ?      Ssl  Oct24  29:25 node /home/sasa/@mikosoft/dodo-examples/server/index.js
sasa        1449  0.3  0.4 1167592 65936 ?       Ssl  Oct24  28:26 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1528  1.5  0.9 22351836 155432 ?     Ssl  Oct24 131:05 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1529  0.3  0.3 1101156 64916 ?       Ssl  Oct24  28:21 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1606  0.3  0.3 1101156 64900 ?       Ssl  Oct24  28:32 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1607  0.3  0.4 1101156 65820 ?       Ssl  Oct24  28:26 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1705  0.3  0.4 1101160 66336 ?       Ssl  Oct24  28:24 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1706  0.3  0.4 1101156 65868 ?       Ssl  Oct24  28:21 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1805  0.3  0.4 1101152 65592 ?       Ssl  Oct24  28:23 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1807  0.3  0.4 1101664 65812 ?       Ssl  Oct24  28:00 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1885  0.3  0.4 1101416 66468 ?       Ssl  Oct24  28:03 node /home/sasa/dex8/dex8-worker/starter.js
sasa        1886  0.7  0.6 11816452 114276 ?     Ssl  Oct24  66:22 node /home/sasa/mikosoft-info/crypto-mikosoft-info/server/index.
www-data 1417242  0.0  0.0   2608   536 ?        S    13:43   0:00 sh -c ps -aux | grep node
www-data 1417244  0.0  0.0   3304   712 ?        S    13:43   0:00 grep node