Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is jquery a javascript library or framework? [closed]

People also ask

Is jQuery a JavaScript library or framework?

What is jQuery? jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers.

What type of library is jQuery?

jQuery is a JavaScript library designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax. It is free, open-source software using the permissive MIT License. As of May 2019, jQuery is used by 73% of the 10 million most popular websites.

Is JavaScript library or framework?

js is a progressive framework for building user interfaces. It is an up-and-coming framework that helps developers in integrating with other libraries and existing projects. It has an ecosystem of libraries that allow developers to create complex and solid single-page applications.

Which is not a JavaScript framework?

Which of the following is not a framework? Explanation: One of the most popular frameworks is jQuery which is used in web development. Here, JavaScript is a scripting language and not a framework.


A library. According to the homepage, and which I agree with.

A framework is something that usually forces a certain way of implementing a solution, whereas jQuery is just a tool to make implementing what you want to do easier.


jQuery: The Write Less, Do More, JavaScript Library.


For sure, it's a javascript library. But about being a framework or not,I just think it's not a framework. Have a look on wikipedia definition of software-framework:

It is a collection of software libraries providing a defined application programming interface.

And jQuery is just a single library. After that it says:

Frameworks contain key distinguishing features that separate them from normal libraries:

  1. inversion of control - In a framework, unlike in libraries or normal user applications, the overall program's flow of control is not dictated by the caller, but by the framework.

So, I think it's not a framework.


According to the angularjs web site

  • a library - a collection of functions which are useful when writing web apps. Your code is in charge and it calls into the library when
    it sees fit. E.g., jQuery.
  • frameworks - a particular implementation of a web application, where your code fills in the details. The framework is in charge and it calls into your code when it needs something app specific. E.g., durandal, ember, etc.

Framework and libarry are not necessarily mutually exclusive terms. Framework is typically a libarry or a collection of libraries.

Strictly speaking, jQuery is a library, but, to an extent, it does meet the definition of a software framework. Although many would argue that jQuery doesn't meet the definition of a software framework strictly enough, the fact is that no other JavaScript framework fully meets the definition of a framework either.

One of the defining characteristics of a software framework is that its code is protected from modifications. In JavaScript, this clearly isn't the case. Any libraries or frameworks that can be called into your client-side code are modifiable, although it would be against best practices to alter them. Therefore, if it is permissible to call Bootstrap or AngularJS a framework, there is no reason why jQuery cannot be called a framework either. This link contains a more detailed explanation of how jQuery meets the criteria to be called a framework.

Perhaps the best explanation of why jQuery is more of a framework than a library is the fact that as a developer, you can chose not to use any of its framework-like functionalities. You can, for example, mix a simple jQuery statement with a standard JavaScript statement on the same line. AngularJS and Bootstrap typically don't allow you to do this. Therefore, the accurate answer whether jQuery is a framework or not is "it depends whether you chose to use it as a framework or not".


I agree with all the answers here that jQuery itself is indeed a library, not a framework. As specified by Saeed's answer, one of the key distinguishing features is inversion of control. You could however use jQuery's functionality to create a framework of your own.

Examples: there are projects built on top of jQuery that are defined as frameworks: jQuery Mobile: A Touch-Optimized Web Framework, JavaScriptMVC and sammy.js to name a few.

There are also other libraries built on top of jQuery, like jQuery UI

Some of it seems like semantics when defining what a library is vs a framework, but those examples help draw the line for me.


If we talk about Inversion of control, which almost everyone in the above thread talks about then jQuery is a FRAMEWORK.

It has got IOC e.g when we write the function $(document).ready{}...it is the container which calls this method and we simply put our code inside the braces. We are not the Caller of this method and hence "Inversion of Control"

This way jQuery is a FRAMEWORK.