什么是 VanillaJS?

IT技术 javascript
2021-01-20 16:30:01

我有一个简单的问题,它在我脑海里萦绕了好几天:什么是 VanillaJS?有些人把它称为框架,你可以从官方页面下载一个库。

但是当我查看一些示例或 TodoMVC 时,他们只使用经典的原始 JavaScript 函数,甚至没有包含官方页面或任何内容的库。此外,官方网页上的“Docs”链接指向 JavaScript 的 Mozilla 规范。

我的问题是:VanillaJS 是原始 JavaScript 吗?如果是的话,当您只需要一个没有任何特殊包含脚本的浏览器时,为什么人们将其称为“框架”?

对于一个可能很愚蠢的问题,我很抱歉,但我不知道人们在说“VanillaJS”时在说什么。

6个回答

这是 VanillaJS(未修改):

// VanillaJS v1.0
// Released into the Public Domain
// Your code goes here:

如您所见,它并不是真正的框架或库。对于喜欢框架的老板或认为您需要使用 JS 框架的人来说,这只是一个正在运行的噱头。这意味着你只需使用你的(为了你自己:非传统)浏览器给你的任何东西(在使用传统浏览器时使用 Vanilla JS 是一个坏主意)。

这是见仁见智,视情况而定。
2021-03-13 16:30:01
仅供参考:Vanilla JS 现在是 0 字节,压缩了 25 字节。
2021-03-17 16:30:01
但是 StackOverflow 适用于所有开发人员,而不仅仅是大多数 :)
2021-03-18 16:30:01
@BlueSkies “在使用旧版浏览器时,普通(“vanilla”)JS 很糟糕这一事实并不是一种观点,而是事实。这就是发明 jQuery 和其他框架的真正原因:在处理浏览器不兼容地狱时简化您的生活!:) vanilla JS 在 2016 年开始回归的唯一原因是,大多数现代浏览器现在比过去更加符合标准,因此您需要的框架越来越少(特别是如果您是 javascript 专家)。
2021-04-05 16:30:01
在我看来,大多数开发人员应该很好地理解这个答案;)
2021-04-10 16:30:01

使用“VanillaJS”意味着使用纯 JavaScript,没有任何额外的库,如 jQuery。

人们用它作为一个笑话来提醒其他开发人员,现在很多事情都可以在不需要额外的 JavaScript 库的情况下完成。

这是一个有趣的网站,开玩笑地谈论这个:http : //vanilla-js.com/

网站vanilla-js.com真的很有趣 :) 有很多关于 VaniliaJs 的好信息
2021-03-23 16:30:01

VanillaJS 是库/框架免费 javascript 的术语。

它有时被讽刺地称为库,对于那些可能被视为无意识地使用不同框架,尤其是 jQuery 的人来说,这是一个笑话。

有些人已经发布了这个库,通常带有一个空的或仅评论的 js 文件。

@ThomasW 我也喜欢可移植性和简洁、高效的语法。这就是为什么我编写function doSomething(args) { ... }然后在我的代码中我可以使用doSomething比 jQuery 更少的代码。;)
2021-03-16 16:30:01
@ThomasW “真实世界的 DOM 或浏览器问题”是否会在 IE 9 及更高版本中引起巨大问题?据我所知,大多数上述问题都与 IE 8 及更早版本有关。当您撰写该评论时,XP 上的 IE 不受支持,而 Windows Vista 和 Windows 7 上的 IE 8 不再受支持,因为 Microsoft 仅支持适用于每个操作系统的最新 IE。
2021-03-18 16:30:01
当然。使用 jQuery 没有任何问题。只是解释这个笑话背后的心态,而不是赞同它。现在澄清了措辞。
2021-03-20 16:30:01
OTOH 我喜欢浏览器的可移植性和简洁、高效的语法。jQuery 为我提供了这一点,总的来说,这是一个非常好的设计选择——比依赖 VanillaLongwindedAndBrowserIncompatible-JS 好多了。
2021-03-21 16:30:01
太好了,如果您不必处理现实世界的 DOM 或浏览器问题。大多数构建 web 应用程序的人都这样做。DOM 操作和浏览器可移植性是问题,jQuery 被发明(改进 Prototype.js)作为解决方案。我同意@NiettheDarkAbsol,对于纯算法代码 jQuery 不相关。
2021-03-24 16:30:01

对于那些对 JavaScript 框架感到兴奋而又不了解纯 Javascript 的人来说,这是一个笑话

所以 VanillaJS 和纯 Javascript 是一样的

俚语中的香草意味着:

平淡的、正常的、传统的、无聊的

这是 YouTube 上关于 VanillaJS 的精彩介绍:什么是 Vanilla JS?

@Ringo 只不过是需要对法国文化有深入了解才能理解的法语笑话,目的是让告诉他们的人看起来比其他人知道得更多。人们可能会使用一些“笑话”来排除其他人,但这不是一个好的假设,尤其是当他们被问到时会很快解释。
2021-03-29 16:30:01
这真的只是一个让新手很困惑的愚蠢笑话。很明显,前端工程师喜欢遮天蔽日,这样他们就可以看起来比下一个人知道的更多。
2021-04-08 16:30:01

简单明了的答案是肯定的,VanillaJS === JavaScript,正如 B. Eich 博士所规定的那样。

甚至 Object.is(VanillaJS, JavaScript) IE 除外。
2021-04-11 16:30:01