What is slim in file.slim.js

21,887

Solution 1

I don't know if .slim.js is a standard name extension for javascript library, but for jQuery, it is a build without some extensions, just check the beginning of the file:

-ajax,-ajax/jsonp,-ajax/load,-ajax/parseJSON,-ajax/parseXML,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-event/ajax,-effects,-effects/Tween,-effects/animatedSelector,-deprecated

Typically you have no ajax support (jQuery.ajax is not defined), no effects, and the deprecated method are removed.

Concerning requireJS, as far as I know if you require jquery, the only file "included" will be jquery.js, so you would have to explicitely require jquery.slim in order to get jquery.slim.js file included, which is not what you want.

Solution 2

THE SLIM VERSION – CONS Possible compatibility issues Even though jQuery Slim 3.0 is an ‘official’ release, its relative newness ensures that plugin and framework vendors have not had particularly much time to adapt their products to the feature set. If your company is currently going through a rocky transition adapting its products to jQuery 3.0, adding the extra grief caused by a deployment of the slim version is unlikely to be worth it. Problems caused by missing or incomplete implementations of support libraries tend to be among the most difficult to debug. Avoiding them is recommended to experienced and novice developers.

Deploying jQuery Slim saves you the princely sum of 6KB: many applications waste more than that on in-line comments in the markup. Of course, compile and parse time is also reduced – but does that really matter in a time when an octacore smartphone can be bought for fewer than 200 euros?

Original Source

Share:
21,887

Related videos on Youtube

Khaled Al-Ansari
Author by

Khaled Al-Ansari

Web Developer at daytime, redhood wannabe at nighttime!.

Updated on May 06, 2022

Comments

  • Khaled Al-Ansari
    Khaled Al-Ansari about 2 years

    Excuse my ignorance but I just installed jQuery using npm and between the jQuery files there's a file called jquery.slim.js, what is slim? I know the min stands for minified but slim is new to me!.

    btw I'm pretty sure slim is not like min because there's another file called jquery.slim.min.js and obviously it's lighter than the normal slim file.

    Also the slim file contains the jQuery 3 beta. (That's what the comments in the code say)

    Again sorry for the stupid question but I got no clue.

    UPDATE

    I'm using require to include the files, would the require include this file without my knowledge? or not?

  • Bram Vanroy
    Bram Vanroy over 8 years
    Do you have any idea if this a build by the devs of jQuery, or if this some third party lib? I cannot seem to find any information regarding it - only a slim version on cdnjs, but not even on their own CDN.
  • Khaled Al-Ansari
    Khaled Al-Ansari over 8 years
    If there's no ajax then why this file is there? I'm asking because one of the main purposes that I'm using jQuery is the ajax function
  • Holt
    Holt over 8 years
    @KhaledAl-Ansari Lots of people use jQuery for DOM manipulation ($()) and do not care about AJAX or custom effects. If you want to use jQuery.ajax, do not use this file.
  • Khaled Al-Ansari
    Khaled Al-Ansari over 8 years
    I'm depending on requireJS for the include, would requireJS include this file without my knowledge?
  • Holt
    Holt over 8 years
    @BramVanroy I think it is build by jQuery's devs since the build/release.js file on the official github repository contains information to build it.
  • Holt
    Holt over 8 years
    @KhaledAl-Ansari I am not using requireJS myself so I cannot say for sure but I think it is very unlikely.
  • Holt
    Holt over 8 years
    @KhaledAl-Ansari According to requireJS doc, except if you specify it explicitely (by requiring jquery.slim or jquery.slim.min), only jquery.js file will be included.
  • Khaled Al-Ansari
    Khaled Al-Ansari over 8 years
    Cool! can you please update your answer so I can verify it
  • KANJICODER
    KANJICODER almost 4 years
    Sometimes it's just about having "less moving parts" , not file size. The more parts in a machine, the more things that can go wrong. I am writing a resume in jquery today. Going to try out jquery.slim.js