2012-06-28 2 views
0

В попытке узнать JS OOP Я просматриваю исходный код jQuery, чтобы лучше понять, как они это делают. Мой вопрос может показаться простым, но мне трудно понять аргументацию нескольких переменных, которые jQuery определил в верхней части их библиотеки. Код показан ниже.Код библиотеки jQuery

(function(window, undefined) { 

// Use the correct document accordingly with window argument (sandbox) 
var document = window.document, 
    navigator = window.navigator, 
    location = window.location; 

....rest of code 

What I don't understand is why they created variables for the document, navigator, and location objects. Does this resolve some type of browser bug? I don't understand the benefit of doing this. 
+0

его просто мое скромное мнение, но если вы действительно хотите изучить JS OOP (с чистым, читаемым и хорошо поддерживаемым кодом), то не узнайте его из jQuery. В моей точке зрения код является лабиринтом. если вы хотите учиться на (с моей точки зрения) хорошей структурированной библиотеке, попробуйте прототип или другие. Редактировать: его просто мое мнение –

+0

Я сейчас смотрю на jQuery и YUI. Как прототип лучше учиться в любой другой библиотеке, например jQuery? – JaPerk14

+0

Я думаю, это вопрос вкуса. Мне нравятся такие функции, как наследование, предоставленное прототипом, и prototype.js легче читать (для меня). –

ответ

3

Они делают, что так что, если какой-либо другой скрипт ошибочно (или намеренно) создали переменные, называемые document, navigator или location, они не влияют на использование JQuery в этих переменных.

+0

, поэтому ваше высказывание о том, что оно делает то же самое, что и undefined, в параметрах. k, ty – JaPerk14

+0

Это правильно. Точная концепция. – duskwuff

Смежные вопросы