How do you iterate over all methods in a JavaScript pseudoclass, regardless of whether or not they are marked enumerable?

StackOverflow https://stackoverflow.com/questions/15094127

I'm trying to iterate over all methods in a JavaScript pseudoclass and can easily tell if something is a method or not with (obj.member instanceof Function), however I'm trying to include methods that may be hidden from a for...in loop via defineProperty with an enumerable flag set to false - how do I iterate all members of a pseudoclass, regardless of the enumerable value?

有帮助吗?

解决方案

You can always use Object.getOwnPropertyNames, which will include non-enumerable properties as well. However, this will not include properties from prototypes, so if you are asking about "pseudoclass instances" you might need to loop the prototype chain with Object.getPrototypeOf.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top