Server : Apache System : Linux 145.162.205.92.host.secureserver.net 5.14.0-611.45.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Apr 1 05:56:53 EDT 2026 x86_64 User : tradze ( 1001) PHP Version : 8.1.34 Disable Function : NONE Directory : /home/tradze/public_html/test.tradze.com/node-socket/node_modules/caller/ |
#### caller
Figure out your caller (thanks to @substack).
##### Initialization Time Caller
```javascript
// foo.js
var bar = require('bar');
```
```javascript
// bar.js
var caller = require('caller');
console.log(caller()); // `/path/to/foo.js`
```
##### Runtime Caller
```javascript
// foo.js
var bar = require('bar');
bar.doWork();
```
```javascript
// bar.js
var caller = require('caller');
exports.doWork = function () {
console.log(caller()); // `/path/to/foo.js`
};
```
### Depth
Caller also accepts a `depth` argument for tracing back further (defaults to `1`).
```javascript
// foo.js
var bar = require('bar');
bar.doWork();
```
```javascript
// bar.js
var baz = require('baz');
exports.doWork = function () {
baz.doWork();
};
```
```javascript
// baz.js
var caller = require('caller');
exports.doWork = function () {
console.log(caller(2)); // `/path/to/foo.js`
};
```