Nasıl bir JavaScript nesnesinin tüm yöntemleri görüntülemek için?
Tüm yöntemleri bir Javascript Nesnesi olarak kullanılabilir aşağıdaki gibi bir yol istedim
alert( show_all_methods( Math ) );
abs, acos, asin, atan, atan2, ceil, cos, exp, kat, günlük, max, min, pow, karışık,yuvarlak, sın, Karekök, uyarı tan.
CEVAP
Sayısız olsun ya da olmasın Object.getOwnPropertyNames()
bir nesneye ait tüm özellikleri almak için kullanabilirsiniz. Örneğin:
console.log(Object.getOwnPropertyNames(Math));
//-> ["E", "LN10", "LN2", "LOG2E", "LOG10E", "PI", ...etc ]
O zaman filter()
tek yöntem elde etmek için kullanabilirsiniz:
console.log(Object.getOwnPropertyNames(Math).filter(function (p) {
return typeof Math[p] === 'function';
}));
//-> ["random", "abs", "acos", "asin", "atan", "ceil", "cos", "exp", ...etc ]
ES3 tarayıcılarda (ve daha düşük IE 8), yerleşik nesnelerin özelliklerini sayısız değil. window
document
gibi nesneleri yerleşik değil, tasarım tarayıcı ve en olası sayısız tarafından tanımlanmışlar.
Genel Nesne
Benzersiz bir küresel var oluşturulan nesne (15.1), önce kontrol herhangi bir yürütme içeriği girer. Başlangıçta küresel nesne var aşağıdaki özellikler:• Yerleşik Matematik, Sicim gibi nesneleri, Tarih, parseınt, vb.Bu özelliklere sahip { DontEnum }.
• Ek ana bilgisayar tanımlı özellikleri. Bu bir içerebilir küresel bir mülk kendisi; örneğin nesne, HTML belge nesne modeli pencere genel nesnenin özellik. küresel nesnesinin kendisi.Kontrol olarak icra bağlamlarını girer ve ECMA kodu yürütülür ek özellikler eklenebilir genel nesne ve ilk özellikleri değiştirilebilir.
Bu nesneler, Genel nesne özellikleri sayısız değil mi anlamına geldiğini belirtmeliyim. Eğer standart belgesine geri kalanında bakarsanız, yerleşik bu nesnelerin özellikleri ve yöntemleri çoğunun üstünde { DontEnum }
özniteliği göreceksiniz.
Güncelleme: bir adam ÇOK kullanıcı, CMS, benim dikkatimi IE bug regarding { DontEnum }
getirdi.
DontEnum özniteliği, [Microsoft] kontrol etmek yerine JScript öznitelik DontEnum olan nesnenin prototip zincirinde aynı adlı bir özellik olduğu herhangi bir nesnenin herhangi bir özelliği üzerinde atlayın.
Kısacası, nesne özellikleri adlandırırken dikkat edin. Eğer bir yerleşik aynı adı taşıyan prototip özelliği veya yöntemi ise orada IE for...in
bir döngü kullanırken üzerine atlar.
Nasıl bir JavaScript nesnesinin bir öz...
Nasıl zaten başlatılmış bir JavaScript...
Nasıl bir JavaScript nesnesinin src ve...
Nasıl özel yöntemleri, alanları veya i...
Nasıl JavaScript ile boş bir dize için...