किसी को फ़ंक्शन का नाम और रेखा कैसे प्राप्त हो सकती है जिसे वर्तमान कहा जाता है? मैं इस तरह एक अल्पविकसित डिबगिंग समारोह करना चाहते हैं (npmlog को परिभाषित करने log.debug
के साथ):node.js में कॉलिंग फ़ंक्शन का नाम और रेखा प्राप्त करें
function debug() {
var callee, line;
/* MAGIC */
log.debug(callee + ":" + line, arguments)
}
जब एक और समारोह से कहा जाता है यह कुछ इस तरह होगा:
function hello() {
debug("world!")
}
// outputs something like:
// "hello:2 'world!'"
स्पष्टता के लिए, जो मैं चाहता this in Python को अनिवार्य रूप से समान है:
import inspect
def caller():
return inspect.stack()[2][3]
// line no from getframeinfo().lineno
वहाँ एक नोड बराबर यह पूरा करने के है?
यह उपयोगी हो सकता है, मैं एक ऐसी ही प्रश्न पूछा नहीं बल्कि संबंधित नोड: http://stackoverflow.com/questions/6885659/determining-source-line-and-file-of-function-reference-how -does-firebug-do-it –