O que é o VanillaJS?


688

Eu tenho uma pergunta simples, que ficou em minha mente por alguns dias: O que é o VanillaJS? Algumas pessoas se referem a ele como uma estrutura, você pode baixar uma biblioteca das páginas oficiais.

Mas quando eu checo alguns exemplos ou TodoMVC, eles usam apenas funções JavaScript brutas clássicas sem incluir a biblioteca nas páginas oficiais ou algo assim. Além disso, o link "Documentos" na página oficial leva à especificação de JavaScript da Mozilla.

Minha pergunta é: O VanillaJS é JavaScript bruto? E se sim, por que as pessoas se referem a ele como "estrutura" quando tudo que você precisa é de um navegador sem scripts especiais incluídos?

Sinto muito por uma pergunta provavelmente estúpida, mas não tenho idéia do que as pessoas estão falando quando dizem "VanillaJS".


245
VanillaJS é Javascript regular. Essa é a piada.
Nelson

30
vanilla-js.com (baixar a biblioteca, marque todas as opções e olhar para o código-fonte para ver como ele é feito)
Qantas 94 Pesado

35
Como gelado de baunilha é basicamente simples, "vanilla" em um monte de meios de gíria "simples ou chato"
TecBrat

21
"Tamanho final: 0 bytes não compactado, 25 bytes compactados."
Amei

23
O mais deprimente é que ele aparece nas especificações de emprego como VanillaJS - trágico o quão pouco recrutadores sabem sobre os papéis para os quais recrutam.
Phil Lello

Respostas:


582

Este é o VanillaJS (não modificado):

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

Como você pode ver, não é realmente uma estrutura ou uma biblioteca. É apenas uma piada para chefes que adoram estruturas ou pessoas que acham que você PRECISA usar uma estrutura JS. Isso significa que você simplesmente usa o que o seu navegador (não legado) lhe fornece (usar o Vanilla JS ao trabalhar com navegadores legados é uma má idéia).


33
Então, quando você viu que o wiki de sua comunidade estava recebendo votos, decidiu excluí-lo e republicá-lo?
Blue Skies

22
@BlueSkies: Não. Inicialmente, era apenas a primeira parte do bloco de código. Ou seja, uma resposta "divertida". Foi por isso que eu fiz isso. Decidi transformá-lo em uma resposta adequada, pois o OP parece ter feito uma pergunta legítima que deveria ser respondida adequadamente.
ThiefMaster 07/12/13

4
Bem, quando alguém diz que algo é uma "má ideia", expressa uma opinião que não é necessariamente verdadeira.
Blue Skies

13
FYI: Vanilla JS agora é 0 bytes, 25 bytes compactados.
Trisped

8
@BlueSkies: O fato de "JS simples (" baunilha ") ser ruim ao trabalhar com navegadores herdados" não é uma opinião, é um fato. É a mesma razão pela qual estruturas como jQuery e outras foram inventadas: para simplificar sua vida ao lidar com o inferno de incompatibilidades de navegador! :) A única razão pela qual o vanilla JS começou a voltar em 2016 é que os navegadores mais modernos agora são muito mais compatíveis com os padrões do que eram no passado, então você precisa de menos e menos estruturas (especialmente se você é um especialista em javascript).
Sorin Postelnicu

371

Usar "VanillaJS" significa usar JavaScript simples, sem bibliotecas adicionais como o jQuery.

As pessoas usam isso como uma piada para lembrar outros desenvolvedores de que muitas coisas podem ser feitas hoje em dia sem a necessidade de bibliotecas JavaScript adicionais.

Aqui está um site engraçado que, brincando, fala sobre isso: http://vanilla-js.com/


3
O site vanilla-js.com é realmente engraçado :) com muitas informações boas sobre VaniliaJs
Mohammad Kermani 19/09/16

74

VanillaJS é um termo para javascript livre de biblioteca / estrutura.

Algumas vezes, ironicamente, é referida como biblioteca, como uma piada para pessoas que poderiam ser vistas sem pensar usando estruturas diferentes, especialmente o jQuery.

Algumas pessoas foram tão longe para liberar esta biblioteca, geralmente com um arquivo js vazio ou apenas para comentários.


5
OTOH Gosto da portabilidade do navegador e da sintaxe concisa e produtiva. O jQuery me mostra que, e em geral, é uma seleção muito boa de design - muito melhor do que depender do JS VanillaLongwindedAndBrowserIncompatible.
Thomas W

Certo. Não há nada de errado em usar o jQuery. Apenas explicando a mentalidade por trás da piada, não a endossando. Agora esclareceu a redação.
Ben McCormick

3
@ThomasW Eu também gosto de portabilidade e sintaxe concisa e produtiva. É por isso que escrevo function doSomething(args) { ... }e, no meu código, posso apenas doSomethingcom menos código que o jQuery. ;)
Niet the Dark Absol

4
Ótimo, se você não precisar lidar com problemas de DOM ou navegador do mundo real. A maioria das pessoas que cria aplicativos da web faz isso. A manipulação do DOM e a portabilidade do navegador são os problemas para os quais o jQuery foi inventado (aprimorando o Prototype.js) como uma solução. Concordo com @ NiettheDarkAbsol, que, para o código de algoritmo puro, o jQuery não é relevante.
Thomas W

@ThomasW Os "problemas do DOM ou do navegador do mundo real" causam um enorme problema no IE 9 e posterior? Até onde eu sei, a maioria dos problemas mencionados está no IE 8 e versões anteriores. O IE no XP não era suportado quando você escreveu esse comentário, e o IE 8 no Windows Vista e Windows 7 não é mais suportado agora que a Microsoft oferece suporte apenas ao IE mais recente disponível para cada sistema operacional.
Damian Yerrick

49

É uma piada para quem está entusiasmado com as estruturas JavaScript e não conhece o Javascript puro.

Portanto, VanillaJS é o mesmo que Javascript puro .

Baunilha na gíria significa:

desinteressante, normal, convencional, chato

Aqui está uma boa apresentação no YouTube sobre o VanillaJS: O que é o Vanilla JS?


3
Isso é realmente apenas uma piada estúpida que é muito confusa para iniciantes. É tão óbvio que os engenheiros de front-end gostam de nublar as águas para que pareçam saber mais do que a próxima pessoa.
Ringo

1
@Ringo Nada mais do que piadas em francês que exigem um conhecimento profundo da cultura francesa são destinadas a fazer com que as pessoas que lhes dizem pareçam conhecer mais do que outras. As pessoas podem estar usando algumas "piadas" para excluir outras, mas isso não é uma boa suposição, especialmente quando são rápidas em explicar quando solicitadas.
Roy Tinker

45

A resposta pura e simples é sim, VanillaJS === JavaScript, conforme prescrito pelo Dr. B. Eich.


17
E até Object.is (VanillaJS, JavaScript), exceto, é claro, o IE.
user2345215

44

VanillaJS === JavaScript, ou seja, VanillaJS é JavaScript nativo

A baunilha diz tudo !!!

O software de computador e, às vezes, também outros sistemas relacionados à computação, como hardware ou algoritmos, são chamados de baunilha quando não personalizados de sua forma original, o que significa que são usados ​​sem nenhuma personalização ou atualização aplicada a eles ( consulte este artigo ). Portanto, baunilha geralmente se refere a pura ou pura.

No idioma inglês, a baunilha tem um significado semelhante. Na tecnologia da informação, a baunilha (pronuncia-se vah-NIHL-uh) é um adjetivo que significa simples ou básico . Ou sem recursos especiais ou extras , comuns ou padrão .

Então, por que o nome VanillaJS? Como a resposta aceita diz que alguns chefes querem trabalhar com uma estrutura (porque é mais organizada e flexível e faz tudo o que queremos?), Mas simplesmente o JavaScript faz o trabalho. No entanto, você precisa adicionar uma estrutura em algum lugar. Use VanillaJS ...

É uma piada ? SIM

Quer diversão? Onde você pode encontrá-lo, http://vanilla-js.com/ Faça o download e veja por si mesmo !!! É 0 bytes uncompressed, 25 bytes gzipped: D

Encontrei esse trocadilho na Internet sobre as estruturas JS (para não condenar as estruturas JS existentes, elas facilitarão a vida :)), insira a descrição da imagem aqui

Consulte também,


1
Tente 2.2 * 100 em baunilha js: D
Suhail Mumtaz Awan

5

"Vanilla JS" é uma expressão que se popularizou após a publicação de um site de sátiras em 2012 ( http://vanilla-js.com/ ). Há uma seção que cobre sua história / significado neste post .

Então, por que a piada? Isso meio que veio como uma resposta moderna ao reflexo instintivo da velha escola de contar com o jQuery e outras bibliotecas JS. Com a especificação ECMAScript e os recursos modernos de navegadores, a necessidade de ignorar JS simples com bibliotecas externas para manter a consistência entre navegadores simplesmente não existe mais. Aqui está um site que mostra como isso é verdade com exemplos concretos: http://youmightnotneedjquery.com/


1

Portanto, essa palavra VanillaJSé apenas uma piada que mudou minha vida. Eu tinha ido a uma empresa alemã para uma entrevista, eu era muito pobre JavaScripte CSS, muito pobre, então o entrevistador me disse: Estamos trabalhando aqui com os VanillaJs , então você deve conhecer essa estrutura .

Definitivamente, entendi que fui rejeitado, mas por uma semana procuro o VanillaJS . Afinal, encontrei ESTE LINK . 😂

O que sou apenas foi por causa dessa piada.

VanillaJS === plain `JavaScript`

1
Eu recebo o que baunilha JS é tudo uma piada.
rodude123

0

Não há nenhuma diferença, VanillaJSé apenas uma maneira de se referir ao JavaScript nativo (não estendido e baseado em padrões). De um modo geral, é um termo de contraste ao usar bibliotecas e estruturas como jQuery e React. O site www.vanilla-js.com enfatiza isso como uma piada, falando sobre VanillaJScomo se fosse uma estrutura rápida, leve e de plataforma cruzada. Que atrapalha as águas! Assim, pode ser uma pequena questão filosófica: "quantas coisas eu compilo para a Vanilla JavaScriptsem ser VanillaJSelas mesmas?" Portanto, uma mera orientação para isso é: se você pode escrever o código e executá-lo em qualquer navegador da Web atual sem ferramentas adicionais ou as chamadas etapas de compilação, pode ser VanillaJS.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.