Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including magic-globals with all npm packages installed. Try it out:

var magicGlobals = require("magic-globals")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

magic-globals v0.9.1

Magic Globals, ex. `__line` and `__func`. Similar to Magic Constants in PHP

Magic Globals

Similar to Magic Constants in PHP. Useful for debugging.

npm version gluten

Usage

// require this module without assigning export
require('magic-globals')

// you may now use additional global objects,
// in addition to built-ins: __filename and __dirname
console.log(__filename) // /home/node/myapp/server/server.js
console.log(__file) // server
console.log(__line) // 6
console.log(__fili) // /home/node/myapp/server/server.js:6
console.log(__ext) // js
console.log(__base) // /home/node/myapp
console.log(__func) // someFunction or (anonymous) 
console.log(__dirname) // /home/node/myapp/server

Credits

These sources have helped to create this module by sharing their code:

  • http://stackoverflow.com/questions/13591785/does-node-js-have-anything-like-file-and-line-like-the-c-preprocessor
  • http://stackoverflow.com/questions/11386492/accessing-line-number-in-v8-javascript-chrome-node-js
  • https://gist.github.com/lordvlad/ec81834ddff73aaa1ab0

Alternatives

These are alternative projects which can yield achieve a similar result:

  • https://www.npmjs.com/package/nor-debug
  • https://www.npmjs.com/package/pitestglobals
  • https://www.npmjs.com/package/magicmethods

License

(The MIT License) Copyright (c) 2015 Gavin Engel <gavin@engel.com>

Metadata

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free