Czy waniliowy JS jest nadal uważany za bibliotekę?

25

Niedawno dowiedziałem się, że VanillaJS (dokument?) To biblioteka, która jest w pakiecie z 99% przeglądarkami i nie jest dokładnie natywnym JavaScriptem (szok mojego życia). Pisząc własną bibliotekę, zwykle unikam wszystkich pomocnych rzeczy, głównie bibliotek. Teraz mam trzy pytania:

  1. Czy VanillaJS nadal jest uważana za lib?
  2. Czy istnieje sposób na zrobienie czegokolwiek z DOM bez VanillaJS?
  3. Czy główne biblioteki oparte są na VanillaJS lub natywnym JS (bez dokumentów)
DividedByZero
źródło
70
Vanilla JS to żart. Ciągniesz nas za nogę, czy powinienem to rozwinąć?
2
@RandomUser, dostałem go po raz drugi, gdy przeglądałem stronę VanillaJS. Po raz pierwszy pomyślałem, że to prosta biblioteka pomocnicza, która później stała się „częścią JS”, ​​kiedy przeglądarki zaczęły implementować jej funkcje. Więc mnie to nie interesowało.
Jesvin Jose
1
@ aitchnyu DOKŁADNIE co myślałem! Nic dziwnego, że moje zmiany w Wikipedii zostały odrzucone: P
DividedByZero
1
Nie być ze słynnym vapor js .
Neil
1
@baultista IIRC, kiedy mówiłem o POJO (Plain Old Java Object), widziałem, jak ktoś żartuje, że był to ustalony wzorzec, ale potrzebował fajnej nazwy, aby konkurować z alternatywami.
Jesvin Jose

Odpowiedzi:

65

To żart, a raczej dowcipny sposób na rację. „wanilia X” odnosi się do „X w najbardziej podstawowy sposób” lub „X bez niczego dodatkowego”, więc „Vanilla JS” to JavaScript, jak pokazuje przeglądarka. VanillaJS to natywny JavaScript . Obejmuje DOM, różne nowe interfejsy API, podstawowe funkcje językowe. Nie obejmuje kodu strony trzeciej, tzn. Tego, co normalnie nazwalibyśmy bibliotekami lub frameworkami. Ludzie, którzy się za tym stoją, prawdopodobnie chcą podkreślić zalety robienia tego w ten sposób, tworząc takie ramy, jak marketing frameworka innej firmy. W świecie JavaScript istnieje, a przynajmniej kiedyś była, tendencja do rzucania ramami przy każdym problemie, bez względu na to, jak banalne byłoby rozwiązanie w „waniliowym” JavaScript.


źródło
2
Nie do końca synonimem DOM, ale rozumiem o co ci chodzi. Używając „VanillaJS” do manipulowania DOM, trzeba być świadomym wszystkich różnych problemów pomiędzy różnymi implementacjami DOM. Jeśli używasz jQuery do manipulacji DOM, wystarczy znać abstrakcyjny DOM, który jQuery udostępnia.
Andrew Hoffman
1
@AndrewHoffman: Różnice między implementacjami nie są tak duże, jak kiedyś; teraz, gdy IE dba o standardy, w dzisiejszych czasach można łatwo napisać kod kompatybilny z wieloma przeglądarkami.
cHao
6
Silniki JavaScript (v8, spidermonkey, chakra) nie obejmują DOM. DOM jest dodawany przez środowisko przeglądarki.
Stop Harming Monica
6
Świetny żart na ten temat: needmorejquery.com
Almo
2
@RandomUser Interfejs API DOM nie jest częścią samego języka Javascript. Jest to standard W3C, który powinny implementować zgodne przeglądarki. Na przykład zobacz ten link, w którym określają, czym jest element: w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/... i ten link, w którym określają sposób, w jaki DOM powinien być eksponowany w JavaScript: w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/…
Paul,