我想獲得某個類的所有靜態成員的列表。例如:我想獲得Object
的所有靜態成員(如Object.create
如果有效等)。我怎樣才能做到這一點?如何獲得javascript中所有靜態成員的列表
例子:
var ClassA = function(){}
ClassA.prototype.getName = function(){return "ClassA";} //public method
ClassA.alertName = function(){ alert("ClassA");} //static method
ClassA.doSomething = function(){return "Do something";} //another static method
所以,如果我得到了更多的靜態成員,我想獲得其中至少有名字。在這個例子中,我想獲得alertName
和doSomething
。對於公衆成員,你可以這樣做:
for (i in ClassA.prototype) {
alert(i);
}
如何使用靜態成員?
你剛剛說了4次同樣的事情(包括你的標題)。我認爲這是一個新記錄 – Ian 2013-03-13 16:00:46
嘗試https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Object/keys **或** https://developer.mozilla.org/en- US/docs/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNames(取決於你想要的) – Ian 2013-03-13 16:04:49
對不起。你可以通過這樣的方式獲得公共成員:for(var i in obj){alert(i +「:」+ obj [i]);}但是它與類不同。我會檢查你的建議,但是我發現瀏覽器兼容性問題(例如,僅支持ie9) – AlFra 2013-03-13 16:16:58