Używam VS2012, a jeden z moich projektów w całej Javascript nazw funkcja ma wszystkich swoich poddanych metod począwszy od podkreślenia _
na przykład:wizualne metody Studio Intellisense z podkreśleniem nie pojawiają
var NameSpace = {
_aMethod = function() { },
_anotherMethod = function() { }
};
Dla przestrzeni nazw utworzyłem szybki plik odwzorowania, a sama przestrzeń nazw jest wyświetlana, ale żadna z metod nie jest dostępna dla tej metody. UWAGA: Jeśli usuniemy _
na początku metod, działa jak urok.
// This would work, and show up in the VSDOC
var NameSpace = {
aMethod = function() { },
anotherMethod = function() { }
//^notice no underscores
};
Czy jest to w ogóle dostępne?
Przejście przez cały projekt i zmiana ich nazwy (nawet w przypadku znaleziska) byłyby ryzykowne, ponieważ metody te są ze sobą powiązane.
Spójrz, dziękuję, Bryan! –
Wygląda na to, że nie działa w VS2013. Usunięto plik, podkreślone metody nadal się nie pojawiają. Próbowałem zamknąć i ponownie otworzyć plik, nawet próbował ponownie uruchomić VS, ale bez powodzenia. – andrewb
Powodem tego jest "podrabianie" podkreślonych właściwości jako właściwości prywatnych. Podczas wywoływania z "na zewnątrz" podkreślenie jest ukryte. Podczas wywoływania właściwości wewnętrznej z "tym" widzisz podkreślone zmienne. Przez przypadek możemy go wyłączyć, jeśli chcemy, dzięki @bryan odpowiedzi. [Inny wątek na ten temat] (http://stackoverflow.com/questions/4484424/underscore-prefix-for-property-and-method-names-in-javascript) – foxontherock