Is there a way to get the scopes of a function from outside the function - JS
up vote
0
down vote
favorite
While using chrome devtools console on a web page, searching for how I would access local variables from within a function, I realized that you can view scopes when manually inspecting a function in an object.
I accessed the function with getEventListeners(window).load[2]
which returned
▼{listener: ƒ, useCapture: false, passive: false, once: false, type: "load"}
►listener: ƒ ()
once: false
passive: false
type: "load"
useCapture: false
►__proto__: Object
when I clicked on the listener function, it showed an object
►[[Scopes]]: Scopes[3]
The scopes object gave a list of all the variables that were used in the function (which was what I was looking for). However, I can only access these manually. There is nothing like getEventListeners(window).load[2].listener.Scopes
Is there any sort of function or method that will return these variables automatically. Such as:
var foo = getEventListeners(window).load[2].listener.Scopes[0]
Thanks
javascript google-chrome-devtools
add a comment |
up vote
0
down vote
favorite
While using chrome devtools console on a web page, searching for how I would access local variables from within a function, I realized that you can view scopes when manually inspecting a function in an object.
I accessed the function with getEventListeners(window).load[2]
which returned
▼{listener: ƒ, useCapture: false, passive: false, once: false, type: "load"}
►listener: ƒ ()
once: false
passive: false
type: "load"
useCapture: false
►__proto__: Object
when I clicked on the listener function, it showed an object
►[[Scopes]]: Scopes[3]
The scopes object gave a list of all the variables that were used in the function (which was what I was looking for). However, I can only access these manually. There is nothing like getEventListeners(window).load[2].listener.Scopes
Is there any sort of function or method that will return these variables automatically. Such as:
var foo = getEventListeners(window).load[2].listener.Scopes[0]
Thanks
javascript google-chrome-devtools
I believe you are looking for this: stackoverflow.com/questions/7444399/…
– I. R. R.
Nov 21 at 23:15
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
While using chrome devtools console on a web page, searching for how I would access local variables from within a function, I realized that you can view scopes when manually inspecting a function in an object.
I accessed the function with getEventListeners(window).load[2]
which returned
▼{listener: ƒ, useCapture: false, passive: false, once: false, type: "load"}
►listener: ƒ ()
once: false
passive: false
type: "load"
useCapture: false
►__proto__: Object
when I clicked on the listener function, it showed an object
►[[Scopes]]: Scopes[3]
The scopes object gave a list of all the variables that were used in the function (which was what I was looking for). However, I can only access these manually. There is nothing like getEventListeners(window).load[2].listener.Scopes
Is there any sort of function or method that will return these variables automatically. Such as:
var foo = getEventListeners(window).load[2].listener.Scopes[0]
Thanks
javascript google-chrome-devtools
While using chrome devtools console on a web page, searching for how I would access local variables from within a function, I realized that you can view scopes when manually inspecting a function in an object.
I accessed the function with getEventListeners(window).load[2]
which returned
▼{listener: ƒ, useCapture: false, passive: false, once: false, type: "load"}
►listener: ƒ ()
once: false
passive: false
type: "load"
useCapture: false
►__proto__: Object
when I clicked on the listener function, it showed an object
►[[Scopes]]: Scopes[3]
The scopes object gave a list of all the variables that were used in the function (which was what I was looking for). However, I can only access these manually. There is nothing like getEventListeners(window).load[2].listener.Scopes
Is there any sort of function or method that will return these variables automatically. Such as:
var foo = getEventListeners(window).load[2].listener.Scopes[0]
Thanks
javascript google-chrome-devtools
javascript google-chrome-devtools
asked Nov 21 at 23:11
wilson wilson
242
242
I believe you are looking for this: stackoverflow.com/questions/7444399/…
– I. R. R.
Nov 21 at 23:15
add a comment |
I believe you are looking for this: stackoverflow.com/questions/7444399/…
– I. R. R.
Nov 21 at 23:15
I believe you are looking for this: stackoverflow.com/questions/7444399/…
– I. R. R.
Nov 21 at 23:15
I believe you are looking for this: stackoverflow.com/questions/7444399/…
– I. R. R.
Nov 21 at 23:15
add a comment |
2 Answers
2
active
oldest
votes
up vote
0
down vote
I think is not possible, because may represent a security problem for Javascript
And if that is not the case, maybe the variables that you´re looking for were deleted by the garbage collector at the moment when you try to get those
You can read more about Memory Management here:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management
add a comment |
up vote
0
down vote
Is there any sort of function or method that will return these variables automatically.
No, it's not possible. EnvironmentRecords are not accessible in "userland" code. The association between a function and an environment is internal to the function and the specification doesn't define any way to access that information.
But of course the association exists and so the developer tools can expose that information for debugging purposes.
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
I think is not possible, because may represent a security problem for Javascript
And if that is not the case, maybe the variables that you´re looking for were deleted by the garbage collector at the moment when you try to get those
You can read more about Memory Management here:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management
add a comment |
up vote
0
down vote
I think is not possible, because may represent a security problem for Javascript
And if that is not the case, maybe the variables that you´re looking for were deleted by the garbage collector at the moment when you try to get those
You can read more about Memory Management here:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management
add a comment |
up vote
0
down vote
up vote
0
down vote
I think is not possible, because may represent a security problem for Javascript
And if that is not the case, maybe the variables that you´re looking for were deleted by the garbage collector at the moment when you try to get those
You can read more about Memory Management here:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management
I think is not possible, because may represent a security problem for Javascript
And if that is not the case, maybe the variables that you´re looking for were deleted by the garbage collector at the moment when you try to get those
You can read more about Memory Management here:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management
answered Nov 21 at 23:26
degreerichi
162
162
add a comment |
add a comment |
up vote
0
down vote
Is there any sort of function or method that will return these variables automatically.
No, it's not possible. EnvironmentRecords are not accessible in "userland" code. The association between a function and an environment is internal to the function and the specification doesn't define any way to access that information.
But of course the association exists and so the developer tools can expose that information for debugging purposes.
add a comment |
up vote
0
down vote
Is there any sort of function or method that will return these variables automatically.
No, it's not possible. EnvironmentRecords are not accessible in "userland" code. The association between a function and an environment is internal to the function and the specification doesn't define any way to access that information.
But of course the association exists and so the developer tools can expose that information for debugging purposes.
add a comment |
up vote
0
down vote
up vote
0
down vote
Is there any sort of function or method that will return these variables automatically.
No, it's not possible. EnvironmentRecords are not accessible in "userland" code. The association between a function and an environment is internal to the function and the specification doesn't define any way to access that information.
But of course the association exists and so the developer tools can expose that information for debugging purposes.
Is there any sort of function or method that will return these variables automatically.
No, it's not possible. EnvironmentRecords are not accessible in "userland" code. The association between a function and an environment is internal to the function and the specification doesn't define any way to access that information.
But of course the association exists and so the developer tools can expose that information for debugging purposes.
answered Nov 21 at 23:54
Felix Kling
539k123841891
539k123841891
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53421742%2fis-there-a-way-to-get-the-scopes-of-a-function-from-outside-the-function-js%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
I believe you are looking for this: stackoverflow.com/questions/7444399/…
– I. R. R.
Nov 21 at 23:15