Jaka jest różnica między plikami jquery.js i jquery.min.js?


289

Jaka jest różnica między plikami jquery.min.js i jquery.js?

Który obsługuje wszystkie funkcje?

Odpowiedzi:


282

Oba są funkcjonalnie takie same, ale jeden .min usuwa wszystkie niepotrzebne znaki, aby zmniejszyć rozmiar pliku.

Dla przypomnienia, lepiej korzystać ze zminimalizowanej wersji (.min) w swoim środowisku na żywo, ponieważ Google sprawdza teraz czasy ładowania strony. Po zminimalizowaniu wszystkich plików JS będą one ładować się szybciej i uzyskają więcej punktów brownie.

Możesz uzyskać dodatek do Mozilli o nazwie Page Speed, który będzie przeglądał twoją stronę i pokazywał wszystkie pliki .JS i zapewniał zminimalizowane wersje (między innymi).


1
@ sasha.sochka Potencjalnie tak, ponieważ zmniejsza rozmiar pliku, co oznacza, że ​​żądanie do serwera jest szybsze, ponieważ rozmiar pliku jest mniejszy. Zależy to oczywiście przede wszystkim od ilości danych w pliku.
webnoob

@webnoob, przepraszam za nieprecyzyjne wyjaśnienie, miałem na myśli wydajność JS w czasie wykonywania.
sasha.sochka

1
@ sasha.sochka AFAIK silnik JS nie zapewnia żadnego wzrostu wydajności.
webnoob

Dodatkowo widziałem funkcje takie jak ta - funkcja (i, s, o, g, r, a, m) . Innym sposobem na ograniczenie liczby znaków, prawda?
Utsav T

2
@ Gilbertpilz - Minimalizacja nie powstrzymuje ludzi przed kradzieżą kodu. Jednak zaciemnianie pomaga zapobiegać ponownemu użyciu Twojego kodu przez ludzi. Oczywiście mogą je pobrać, ale będzie to bełkot i będzie trudne do naśladowania.
webnoob

122

Oba obsługują te same funkcje. jquery.min.jsjest skompresowaną wersją jquery.js(pozbawione białych znaków i komentarzy, krótszych nazw zmiennych, ...) w celu zachowania przepustowości. Pod względem funkcjonalności są absolutnie takie same. Zaleca się stosowanie tej skompresowanej wersji w środowisku produkcyjnym.


94
  • jquery.js = Ładny i łatwy do odczytania :) Przeczytaj ten.

  • jquery.min.js = Wygląda jak jibberish! Ale ma mniejszy rozmiar pliku. Umieść to na swojej stronie.

Oba są takie same pod względem funkcjonalności. Różnica polega tylko na tym, czy jest ładnie sformatowana, aby zapewnić czytelność, czy kompaktowo, aby uzyskać mniejszy rozmiar pliku.

W szczególności drugi jest minimalizowany , co polega na usuwaniu niepotrzebnych białych znaków i skracaniu nazw zmiennych. Oba przyczyniają się do tego, że kod jest znacznie trudniejszy do odczytania: usunięcie białych znaków usuwa podziały wierszy i spacje, które psują formatowanie, a skrócenie nazw zmiennych (w tym niektórych nazw funkcji) zastępuje oryginalne nazwy zmiennych literami bez znaczenia.

Wszystko to odbywa się w taki sposób, że w żaden sposób nie wpływa na zachowanie kodu podczas uruchamiania. W szczególności zastąpienie / skrócenie nazw zmiennych i funkcji jest wykonywane tylko w przypadku nazw pojawiających się w zasięgu lokalnym, gdzie nie będzie zakłócać żadnego innego kodu w innych skryptach.


1
Dlaczego więc miałbyś używać wersji niezminifikowanej? Mam na myśli, że nie linkujesz do wersji nie zminimalizowanej tylko po to, aby ją przeczytać. Dlaczego oni to oferują?
Sebastian Nielsen,

24

Jquery.min.js to nic innego jak skompresowana wersja jquery.js. Możesz używać go w taki sam sposób jak jquery.js, ale jest on mniejszy, więc w produkcji powinieneś używać wersji zminimalizowanej, a podczas debugowania możesz używać normalnej wersji jquery.js. Jeśli chcesz skompresować własny plik javascript, możesz użyć tych kompresorów:

Lub po prostu przeczytaj topis na StackOverflow o kompresji js :):


1
Prawdopodobnie najlepszym obecnie kompresorem jest UglifyJS. Przez długi czas wcześniej najlepszy był kompilator zamknięcia Google.
thomasrutter

8

W prostym języku obie wersje są absolutnie takie same. Jedyną różnicą jest:

  • min.js jest dla stron internetowych (online)

  • .js jest przeznaczony dla programistów, facetów, którzy muszą czytać, uczyć się i / lub rozumieć kody jquery, np. rozwój wtyczek (offline, praca lokalna).


5

Oba zawierają tę samą funkcjonalność, ale odpowiednik .min.js został zoptymalizowany pod względem wielkości. Możesz otworzyć oba pliki i na nie spojrzeć. W pliku .min.js zauważysz, że wszystkie nazwy zmiennych zostały zredukowane do krótkich nazw i że usunięto większość białych znaków i komentarzy.



3

podsumowanie - popularne frameworki js, takie jak jquery lub dojo, oferują jedną komentowaną, ładnie sformatowaną wersję z komentarzami do ROZWOJU oraz wersję zminimalizowaną (szybciej) bez komentarzy itp. do PRODUKCJI

jquery.js - programowanie jquery.min.js - produkcja


2

Jeśli korzystasz z JQuery na stronie produkcyjnej, którą bibliotekę należy załadować? JQuery.js czy JQuery.min.js? Krótka odpowiedź jest taka, że ​​są one zasadniczo takie same i mają tę samą funkcjonalność.

Jedna wersja jest długa, a druga jest wersją zminimalizowaną. Zminimalizowane jest kompresowane w celu zaoszczędzenia miejsca i czasu ładowania strony. Białe spacje zostały usunięte w wersji zminimalizowanej, co powoduje, że stają się one chaotyczne i niemożliwe do odczytania.

Jeśli zamierzasz uruchomić bibliotekę JQuery na stronie produkcyjnej, zalecamy użycie wersji zminimalizowanej, aby skrócić czas ładowania strony, co Google bierze teraz pod uwagę w rankingu stron.

Inną dobrą opcją jest skorzystanie z internetowej biblioteki javascript Google. Pozwoli to zaoszczędzić kłopotów związanych z pobieraniem biblioteki, a także przesyłaniem do witryny. Ponadto witryna nie korzysta z zasobów podczas ładowania JQuery.

Najnowsza zminimalizowana wersja JQuery od Google jest dostępna tutaj.

Możesz do niego link na swoich stronach, używając:

http://ulyssesonline.com/2010/12/03/jquery-js-or-jquery-min-js/


1

jquery.min to wersja kompresująca. Usunięto komentarze, nowe linie ...


1

Jeśli użyjesz Jquery z Google CDN, poważnie poprawi to wydajność od 5 do 10 razy większą niż ta, którą dodajesz do swojej strony, która jest pobierana. Otrzymasz również najnowszą wersję plików Jquery.

Różnica między obydwoma plikami, tj. Jquery.js i jquery.min.js, to tylko rozmiar pliku, dzięki czemu pliki są pobierane szybciej. :)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.