var test = {
demo: function(){
//get the caller context here
}
}
//when this gets called, the caller context should be window.
test.demo();
J'ai essayé arguments.callee
et arguments.callee.caller
et pas de chance...
var test = {
demo: function(){
//get the caller context here
}
}
//when this gets called, the caller context should be window.
test.demo();
J'ai essayé arguments.callee
et arguments.callee.caller
et pas de chance...
Par contexte, je suppose que vous voulez dire this
? Cela dépend de la façon dont la fonction est appelée, pas d'où elle est appelée.
Par exemple (à l'aide d'une console Webkit) :
var test = {
demo: function() {
console.log(this);
}
}
test.demo(); // logs the "test" object
var test2 = test.demo;
test2(); // logs "DOMWindow"
test.demo.apply("Cheese"); // logs "String"
Incidemment, arguments.caller
est obsolète.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.