How To Console Log The Name Of A Variable/function?
Solution 1:
You can log them with a pair of braces around them ({}
), which will create an object with the name of the variable as the key:
function someFunction() {};
const someOtherFunction = () => {};
const someValue = 9;
console.log({someFunction});
console.log({someOtherFunction});
console.log({someValue});
const renamed = someFunction;
console.log({renamed})
Solution 2:
Would this work for you?
const log = function() {
const key = Object.keys(this)[0];
const value = this[key];
console.log(`${key}:${value}`);
}
let someValue = 2;
log.call({someVlaue}); //someValue:2
Works with function too, even itself.
log.call({log});
// It would return the following
log:function() {
const key = Object.keys(this)[0];
const value = this[key];
console.log(`${key}:${value}`);
}
Solution 3:
If “value” is of type Object. You can try console.dir(value) instead of the long console.log, and you should be able to see the Object tree key: value pairs in a better formate in the console
Solution 4:
The "value" is of type Object. Use JSON.stingify to see in details,
export const log = (value) => {
console.log('' + value + ':', JSON.stringify(value))
console.log(JSON.stringify(value))
}
Solution 5:
You can’t achieve this within the JS interpreter the way you have described. There is no way to get the name of a variable inside of your log function.
You can only do it inside of the caller of your log function, by converting the calling function to a string and parsing the code and grabbing the variable name passed to your log function.
You could try to get the caller of the log function and do what I have described but I would not recommend this.
Post a Comment for "How To Console Log The Name Of A Variable/function?"