4 ms·
> Seems pretty vanilla No it doesn't, same as "automobile" doesn't seem pretty Saturn-5, despite the fact that both are moving under their own power. Terms ha
by usrbinbash 3y ago
> Seems pretty vanilla
No it doesn't, same as "automobile" doesn't seem pretty Saturn-5, despite the fact that both are moving under their own power.
Terms have meaning, including meaning derived from communities by and large accepting that a certain term has a certain semantic meaning. And the accepted semantic meaning of "Vanilla Javascript" is "runs without a framework besides the browsers own API".
If my code works out of the box in an unmodified browser, then it is Vanilla JS. If I have to load a framework for it to work, then it isn't, period. And it matters exactly nothing whether the framework in question has 900,000 or 9 lines of code.
- rawoke083600 3y ago^^^100%
- zambal 3y agoSo loading an external library or framework isn't Vanilla JS, but if I copy/paste the VanJS source into a script tag, nothing gets loaded, there's no syntax magic, just some function calls, so that's Vanilla JS, right? If the latter isn't Vanilla JS by your definition, can I at least copy/paste something from stackoverflow? Trying to make Vanilla JS a strict definition seems pointless to me in the first place.
- usrbinbash 3y ago> so that's Vanilla JS, right I think we don't have to argue about the distinction between the library code and the application code. It doesn't matter how the library is loaded. You can get it from a CDN at runtime, load it from a scriptbundle, copypaste it into a <script> tag, it doesn't matter. It's still library code that the rest of the application depends on. As soon as that is the case, it's no longer what the JS community by and large calls "Vanilla JS". This is Vanilla JS: fetch('/readme.txt') .then(response => response.text()) .then(data => console.log(data)) .catch(error => console.log(error)) This isn't: awesomeLib().goesBrrrrr() > Trying to make Vanilla JS a strict definition seems pointless to me in the first place. Being able to name things, and having clarity in a community about what names denote, is anything but pointless.
- NoWizards 3y agoWhen you do it this way isn't even a framework is just a helper library (at his best). There is another concept for this kind of micro-libraries but calling "framework" to something that will not establish a frame of work for you.
- svachalek 3y agoThe important part is that if you don't copy VanJS into a script tag, or use it all, you're still doing Vanilla JS.
- joesb 3y ago> If my code works out of the box in an unmodified browser, then it is Vanilla JS. If I have to load a framework for it to work, then it isn't, period. Minor nitpick, third party library and framework does not modify your browser. They all still run on unmodified browsers.