Что такое VanillaJS?


688

У меня есть один простой вопрос, который застрял в моей голове на несколько дней: что такое VanillaJS? Некоторые люди называют это фреймворком, вы можете скачать библиотеку с официальных страниц.

Но когда я проверяю некоторые примеры или TodoMVC, они просто используют классические необработанные функции JavaScript, даже не включая библиотеку с официальных страниц или что-то еще. Также ссылка "Docs" на официальной веб-странице ведет к спецификации JavaScript в Mozilla.

Мой вопрос: является ли VanillaJS сырым JavaScript? И если да, почему люди называют его «каркасом», когда все, что вам нужно, это браузер без каких-либо специальных включенных скриптов?

Я прошу прощения за возможно глупый вопрос, но я понятия не имею, о чем говорят люди, когда говорят «VanillaJS».


245
VanillaJS - это обычный Javascript. Это шутка.
Нельсон

30
vanilla-js.com (скачайте библиотеку, отметьте все опции и посмотрите, как это делается, в исходный код)
Qantas 94 Heavy

35
Как ванильное мороженое в основном простое, «ваниль» во многих
сленгах

21
«Окончательный размер: 0 байт без сжатия, 25 байт в сжатом виде». Люблю это: O)
cronvel

23
По-настоящему удручает то, что в спецификации рабочих мест он выглядит как VanillaJS - трагически, как мало рекрутеров знают о ролях, на которые они нанимают.
Фил Лелло

Ответы:


582

Это VanillaJS (без изменений):

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

Как видите, на самом деле это не фреймворк или библиотека. Это просто кляп для боссов, которые любят фреймворки, или людей, которые считают, что вам НУЖНО использовать фреймворк JS. Это означает, что вы просто используете все, что ваш браузер (для вас не устаревший) дает вам (использование Vanilla JS при работе с устаревшими браузерами - плохая идея).


33
Итак, когда вы увидели, что вики вашего сообщества получают голоса, вы решили удалить и повторно опубликовать их?
Голубое небо

22
@BlueSkies: Нет. Изначально это была только первая часть с блоком кода. Т.е. "забавный" ответ. Вот почему я CW'd это. Тогда я решил превратить это в правильный ответ, так как ФП, кажется, задал законный вопрос, на который нужно ответить правильно.
ThiefMaster

4
Ну, когда кто-то говорит, что это «плохая идея», он выражает мнение, которое не обязательно верно.
Голубое небо

13
К вашему сведению: Vanilla JS теперь 0 байтов, сжатых 25 байтов.
Трипед

8
@BlueSkies: тот факт, что «простой (« ванильный ») JS плох при работе с устаревшими браузерами» - это не мнение, а факт. Это та самая причина, по которой такие фреймворки, как jQuery и другие, были изобретены: чтобы упростить свою жизнь при работе с адом несовместимости браузеров! :) Единственная причина, по которой vanilla JS начала появляться в 2016 году, заключается в том, что большинство современных браузеров теперь гораздо более совместимы со стандартами, чем в прошлом, поэтому вам нужно все меньше и меньше фреймворков (особенно если вы являетесь экспертом по javascript).
Сорин Постельнику

371

Использование «VanillaJS» означает использование простого JavaScript без каких-либо дополнительных библиотек, таких как jQuery.

Люди используют это как шутку, чтобы напомнить другим разработчикам, что в наше время можно многое сделать без необходимости использования дополнительных библиотек JavaScript.

Вот забавный сайт, который в шутку говорит об этом: http://vanilla-js.com/


3
Веб-сайт vanilla-js.com действительно забавный :) со множеством полезной информации о VaniliaJs
Мохаммад Кермани

74

VanillaJS - это термин, обозначающий свободный от библиотек и фреймворков javascript.

Иногда его иронически называют библиотекой, как шуткой для людей, которых можно рассматривать как бездумно использующих разные фреймворки, особенно jQuery.

Некоторые люди зашли так далеко, чтобы выпустить эту библиотеку, обычно с пустым или только для комментариев js-файлом.


5
OTOH Мне нравится мобильность браузера и краткий, продуктивный синтаксис. JQuery дает мне это, и в целом, это очень хороший выбор дизайна - гораздо лучше, чем полагаться на VanillaLongwindedAndBrowserIncompatible-JS.
Томас W

Конечно. Нет ничего плохого в использовании jQuery. Просто объясняю мышление позади шутки, а не одобряю его. Теперь уточнил формулировку.
Бен Маккормик

3
@ThomasW Мне также нравится переносимость и сжатый, продуктивный синтаксис. Вот почему я пишу, function doSomething(args) { ... }а затем в своем коде я могу просто doSomethingеще меньше кода, чем jQuery. ;)
Niet the Dark Absol

4
Отлично, если вам не приходится иметь дело с реальными проблемами DOM или браузерами. Большинство людей, создающих веб-приложения, делают. Манипулирование DOM и переносимость браузера - это проблемы, для решения которых был изобретен jQuery (улучшается Prototype.js). Я согласен с @ NiettheDarkAbsol, что для чистого кода алгоритма jQuery не актуален.
Томас В.

@ThomasW «Реальные проблемы с DOM или браузером» вызывают огромную проблему в IE 9 и более поздних версиях? Насколько я могу судить, большинство из указанных проблем связаны с IE 8 и более ранними версиями. Когда вы написали этот комментарий, IE в XP не поддерживался, а IE 8 в Windows Vista и Windows 7 больше не поддерживается, поскольку Microsoft поддерживает только самый последний IE, доступный для каждой ОС.
Дамиан Йеррик

49

Это шутка для тех, кто увлечен фреймворками JavaScript и не знает чистого Javascript.

Итак, VanillaJS - это то же самое, что и чистый Javascript .

Ваниль в сленге означает:

неинтересный, нормальный, обычный, скучный

Вот хорошая презентация на YouTube о VanillaJS: Что такое Vanilla JS?


3
Это на самом деле просто глупая шутка, которая очень запутывает новичков. Это так очевидно, что передовые инженеры любят замаскировать воду, чтобы они могли знать больше, чем следующий человек.
Ринго

1
@ Ринго Не более, чем французские шутки, которые требуют глубокого знания французской культуры, предназначены для того, чтобы заставить людей, которые им говорят, знать больше других. Люди могут использовать некоторые «шутки», чтобы исключить других, но это не очень хорошее предположение, особенно когда они быстро объясняют, когда их просят.
Рой Тинкер

45

Простой и простой ответ - да, VanillaJS === JavaScript, как предписано доктором Б. Айхом.


17
И даже Object.is (VanillaJS, JavaScript), кроме, конечно, IE.
user2345215

44

VanillaJS === JavaScript, т.е. VanillaJS является нативным JavaScript

Почему, Ваниль говорит все это !!!

Компьютерное программное обеспечение, а иногда и другие компьютерные системы, такие как компьютерное оборудование или алгоритмы, называются ванильными, если они не настроены из своей первоначальной формы, что означает, что они используются без каких-либо настроек или обновлений ( см. Эту статью ). Так что ваниль часто относится к чистому или простому.

В английском языке ваниль имеет аналогичное значение, в информационных технологиях ваниль (произносится vah-NIHL-ух) является прилагательным, означающим простой или базовый . Или не имеющие специальных или дополнительных функций , обычных или стандартных .

Так зачем называть это VanillaJS? Как принято в ответе, некоторые руководители хотят работать с фреймворком (потому что он более организован и гибок и делает все, что мы хотим ??), но просто JavaScript сделает эту работу. Тем не менее вам нужно добавить рамки где-то. Используйте VanillaJS ...

Это шутка ? ДА

Хочу повеселиться? Где вы можете найти это, http://vanilla-js.com/ Скачайте и убедитесь сами !!! Это 0 bytes uncompressed, 25 bytes gzipped: D

Нашел в интернете этот каламбур относительно JS-фреймворков (хотя, чтобы не осуждать существующие JS-фреймворки, они сделают жизнь по-настоящему легкой :)), введите описание изображения здесь

Также обратитесь,


1
попробуйте 2,2 * 100 в ванильном JS: D
Сухайль Мумтаз Аван

5

«Vanilla JS» - это выражение, которое стало популярным после публикации сатирического сайта в 2012 году ( http://vanilla-js.com/ ). В этом посте есть раздел, посвященный его истории / значению .

Так почему шутка? Это как современный ответ на рефлекс старой школы, основанный на использовании jQuery и дополнительных библиотек JS. Благодаря спецификации ECMAScript и современным возможностям браузеров необходимость обхода простого JS с внешними библиотеками для обеспечения согласованности между браузерами просто отсутствует. Вот сайт, который показывает вам, насколько это верно, на конкретных примерах: http://youmightnotneedjquery.com/


1

Это слово, следовательно, VanillaJSпросто проклятая шутка, которая изменила мою жизнь. Я пошел на собеседование в немецкую компанию, я был очень беден JavaScriptи CSSочень беден, поэтому интервьюер сказал мне: « Мы работаем здесь с VanillaJ , так что вы должны знать эту структуру .

Определенно, я понял, что мне отказали, но в течение одной недели я ищу VanillaJS , в конце концов, я нашел ЭТУ ССЫЛКУ . 😂

То, что я просто был из-за этой шутки.

VanillaJS === plain `JavaScript`

1
Я понимаю, что ванильный JS - это все шутка
rodude123

0

Нет никакой разницы, VanillaJSэто просто способ ссылаться на нативный (не расширенный и не основанный на стандартах) JavaScript. Вообще говоря, это термин контраста при использовании библиотек и сред, таких как jQuery и React. Сайт www.vanilla-js.com делает акцент на этом как на шутку, говоря о VanillaJSтом, что это быстрая, легкая и кроссплатформенная инфраструктура. Это мутит воду! Таким образом, это может быть небольшой философский вопрос: «Сколько вещей я собираю в Vanilla, JavaScriptне будучи VanillaJSсамим собой?» Итак, простое руководство для этого: если вы можете написать код и запустить его в любом текущем веб-браузере без дополнительных инструментов или так называемых шагов компиляции, это может быть VanillaJS.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.