To trochę spekulacyjne, ale oto mój strzał.
jQuery w pełni obejmuje funkcjonalną naturę javascript. To sprawia, że jest tak niesamowity, ale może sprawić, że wielu programistów podrapie się po głowie, gdy pochodzą z czysto językowego języka OO, takiego jak Java. Wydaje się, że łamie wszelkie konwencje i dobre praktyki.
Język funkcjonalny kładzie nacisk na deklaratywną składnię. Mają tendencję do czytania jak stwierdzenie faktu, a nie jak polecenia. Przykład
var eligible = customers.where(c => c.age > 30);
które można odczytać jako „uprawnionymi klientami są klienci w wieku powyżej 30 lat”. Natomiast język imperatywny brzmi jak sekwencja poleceń
for (customer in customers)
if (customer.age > 30)
eligible.add(customer)
Można to odczytać jako „Sprawdź każdego klienta, a jeśli jego wiek przekracza 30 lat, dodaj go do odpowiedniej kolekcji”
Dodanie aa set
i get
operacji sprawiłoby, że jQuery czułoby się jak biblioteka imperatywna. Możesz ograniczyć sposób czytania poniższych instrukcji
// The element tag have an html of <p>hello</p>
$("#element").html("<p>hello</p>");
// content represent the html of the element tag
var content = $("#element").html();
//Imperative style
// Set the element tag to an inner html of <p>hello</p>
$("#element").setHtml("<p>hello</p>");
//Get the html of #element, and put it in the content variable
var content = $("#element").getHtml();
Utrzymując czasownik działań poza interfejsem jQuery, sprawili, że poczuł się jak deklaratywny interfejs API. Nadaje bibliotece spójny, funkcjonalny charakter. Dlatego myślę, że przeciążyli słowa kluczowe.