Apa itu VanillaJS?


688

Saya punya satu pertanyaan sederhana, yang tersangkut di benak saya selama beberapa hari: Apa itu Vanilla? Beberapa orang menyebutnya sebagai kerangka kerja, Anda dapat mengunduh perpustakaan dari halaman resmi.

Tetapi ketika saya memeriksa beberapa contoh atau TodoMVC, mereka hanya menggunakan fungsi JavaScript mentah klasik tanpa menyertakan perpustakaan dari halaman resmi atau apa pun. Juga tautan "Documents" pada halaman web resmi mengarah ke spesifikasi Mozilla JavaScript.

Pertanyaan saya adalah: Apakah VanillaJS baku JavaScript? Dan jika ya, mengapa orang menyebutnya sebagai "kerangka kerja" ketika semua yang Anda butuhkan adalah browser tanpa skrip yang disertakan khusus?

Saya minta maaf untuk pertanyaan yang mungkin bodoh tapi saya tidak tahu apa yang orang bicarakan ketika mereka mengatakan "VanillaJS".


245
VanillaJS adalah Javascript biasa. Itu lelucon.
Nelson

30
vanilla-js.com (unduh perpustakaan, centang semua opsi dan lihat kode sumber untuk melihat bagaimana hal itu dilakukan)
Qantas 94 Heavy

35
Seperti es krim vanila pada dasarnya polos, "vanilla" dalam banyak bahasa slang berarti "polos atau membosankan"
TecBrat

21
"Ukuran akhir: 0 byte tidak terkompresi, 25 byte gzip." Menyukainya: O)
cronvel

23
Hal yang benar-benar menyedihkan adalah muncul pada spesifikasi pekerjaan sebagai VanillaJS - tragis betapa sedikit banyak perekrut tahu tentang peran yang mereka rekrut.
Phil Lello

Jawaban:


582

Ini adalah VanillaJS (tidak dimodifikasi):

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

Seperti yang Anda lihat, itu sebenarnya bukan kerangka kerja atau perpustakaan. Ini hanya lelucon bagi bos yang mencintai kerangka kerja atau orang yang berpikir Anda PERLU menggunakan kerangka kerja JS. Itu berarti Anda hanya menggunakan apa pun yang diberikan browser Anda (demi Anda: non-legacy) (menggunakan Vanilla JS saat bekerja dengan browser lawas adalah ide yang buruk).


33
Jadi, ketika Anda melihat wiki komunitas Anda mendapatkan suara, Anda memutuskan untuk menghapus dan mengirim ulangnya?
Blue Skies

22
@BlueSkies: Tidak. Awalnya itu hanya bagian pertama dengan blok kode. Yaitu jawaban "menyenangkan". Itu sebabnya saya CW itu. Kemudian saya memutuskan untuk mengubahnya menjadi jawaban yang tepat karena OP tampaknya telah mengajukan pertanyaan yang sah yang harus dijawab dengan benar.
ThiefMaster

4
Nah, ketika seseorang mengatakan sesuatu adalah "ide buruk", ia mengekspresikan pendapat yang belum tentu benar.
Blue Skies

13
FYI: Vanilla JS sekarang 0 byte, 25 byte terkompresi.
Dipotong

8
@BlueSkies: Fakta "JS biasa (" vanilla ") itu buruk ketika bekerja dengan browser lawas" bukan pendapat, itu fakta. Itulah alasan mengapa kerangka kerja seperti jQuery dan lainnya diciptakan: untuk menyederhanakan hidup Anda ketika berhadapan dengan neraka yang tidak kompatibel dengan browser! :) Satu-satunya alasan mengapa vanilla JS mulai kembali pada tahun 2016 adalah bahwa sebagian besar browser modern sekarang jauh lebih memenuhi standar daripada sebelumnya, sehingga Anda membutuhkan kerangka kerja yang semakin sedikit (terutama jika Anda seorang ahli javascript).
Sorin Postelnicu

371

Menggunakan "VanillaJS" berarti menggunakan JavaScript biasa tanpa pustaka tambahan seperti jQuery.

Orang-orang menggunakannya sebagai lelucon untuk mengingatkan pengembang lain bahwa banyak hal dapat dilakukan saat ini tanpa perlu perpustakaan JavaScript tambahan.

Inilah situs lucu yang bercanda bercanda tentang ini: http://vanilla-js.com/


3
Situs web vanilla-js.com benar-benar lucu :) dengan banyak informasi bagus tentang VaniliaJs
Mohammad Kermani

74

VanillaJS adalah istilah untuk library / framework javascript gratis.

Kadang-kadang ironisnya disebut sebagai perpustakaan, sebagai lelucon bagi orang-orang yang dapat dilihat tanpa berpikir menggunakan kerangka kerja yang berbeda, terutama jQuery.

Beberapa orang sejauh ini telah merilis perpustakaan ini, biasanya dengan file js kosong atau hanya komentar.


5
OTOH Saya suka portabilitas browser & ringkas, sintaks produktif. jQuery memberi saya itu, dan secara umum, ini adalah pilihan desain yang sangat bagus - jauh lebih baik daripada mengandalkan VanillaLongwindedAndBrowserIncompatible-JS.
Thomas W

Tentu. Tidak ada yang salah dengan menggunakan jQuery. Hanya menjelaskan pola pikir di balik lelucon itu, bukan mendukungnya. Sekarang diklarifikasi kata-katanya.
Ben McCormick

3
@ Thomas Saya suka portabilitas dan ringkas, sintaks produktif juga. Itu sebabnya saya menulis function doSomething(args) { ... }dan kemudian dalam kode saya, saya bisa hanya doSomethingdalam kode lebih sedikit daripada jQuery. ;)
Niet the Dark Absol

4
Hebat, jika Anda tidak harus berurusan dengan DOM atau masalah browser dunia nyata. Kebanyakan orang membuat aplikasi web. Manipulasi DOM & portabilitas browser adalah masalah, yang jQuery ditemukan (meningkatkan Prototype.js) sebagai solusi. Saya setuju dengan @ NiettheDarkAbsol, bahwa untuk kode algoritma murni, jQuery tidak relevan.
Thomas W

@ThomasW Apakah "masalah DOM atau browser dunia nyata" menyebabkan masalah besar di IE 9 dan yang lebih baru? Sejauh yang saya tahu, sebagian besar masalah mengatakan dengan IE 8 dan sebelumnya. IE pada XP tidak didukung ketika Anda menulis komentar itu, dan IE 8 pada Windows Vista dan Windows 7 tidak lagi didukung sekarang karena Microsoft hanya mendukung IE terbaru yang tersedia untuk setiap OS.
Damian Yerrick

49

Ini adalah lelucon bagi mereka yang bersemangat tentang kerangka JavaScript dan tidak tahu Javascript murni.

Jadi VanillaJS sama dengan Javascript murni .

Vanila dalam bahasa gaul berarti:

tanpa kegirangan, normal, konvensional, membosankan

Berikut ini adalah presentasi yang bagus di YouTube tentang VanillaJS: Apa itu Vanilla JS?


3
Ini benar-benar hanya lelucon bodoh yang sangat membingungkan bagi pemula. Sangat jelas bahwa insinyur ujung depan suka mengaburkan air sehingga mereka dapat terlihat lebih tahu daripada orang berikutnya.
Ringo

1
@Ringo Tidak lebih dari lelucon Prancis yang membutuhkan pengetahuan mendalam tentang budaya Prancis untuk dipahami dimaksudkan untuk membuat orang yang memberi tahu mereka tampak lebih tahu daripada orang lain. Orang mungkin menggunakan beberapa "in-jokes" untuk mengecualikan orang lain, tetapi itu bukan asumsi yang baik untuk dibuat, terutama ketika mereka cepat menjelaskan ketika ditanya.
Roy Tinker

45

Jawaban yang jelas dan sederhana adalah ya, VanillaJS === JavaScript, seperti yang ditentukan oleh Dr. B. Eich.


17
Dan bahkan Object.is (VanillaJS, JavaScript) kecuali tentu saja IE.
user2345215

44

VanillaJS === JavaScript yaitu VanillaJS adalah JavaScript asli

Kenapa, Vanilla mengatakan semuanya !!!

Perangkat lunak komputer, dan kadang-kadang juga sistem yang berhubungan dengan komputer lain seperti perangkat keras komputer atau algoritma, disebut vanilla ketika tidak dikustomisasi dari bentuk aslinya, artinya digunakan tanpa penyesuaian atau pembaruan apa pun yang diterapkan padanya ( Lihat artikel ini ). Jadi Vanilla sering merujuk pada murni atau polos.

Dalam bahasa Inggris, Vanilla memiliki makna yang serupa. Dalam teknologi informasi, vanilla (diucapkan vah-NIHL-uh) adalah kata sifat yang berarti polos atau dasar . Atau tidak memiliki fitur khusus atau tambahan , biasa atau standar .

Jadi mengapa menamainya VanillaJS? Sebagai jawaban yang diterima mengatakan beberapa bos ingin bekerja dengan kerangka kerja (karena lebih terorganisir dan fleksibel dan melakukan semua hal yang kita inginkan ??) tetapi JavaScript hanya akan melakukan pekerjaan. Namun Anda perlu menambahkan kerangka kerja di suatu tempat. Gunakan VanillaJS ...

Apakah ini sebuah lelucon ? IYA

Ingin bersenang-senang? Di mana Anda dapat menemukannya, http://vanilla-js.com/ Unduh dan lihat sendiri !!! Itu 0 bytes uncompressed, 25 bytes gzipped: D

Menemukan permainan ini di internet tentang kerangka kerja JS (Tidak untuk mengutuk kerangka kerja JS yang ada, mereka akan membuat hidup sangat mudah :)), masukkan deskripsi gambar di sini

Lihat juga,


1
coba 2.2 * 100 di vanilla js: D
Suhail Mumtaz Awan

5

"Vanilla JS" adalah ekspresi yang mulai populer setelah penerbitan situs web sindiran pada tahun 2012 ( http://vanilla-js.com/ ). Ada bagian yang meliput kisah / maknanya dalam posting ini .

Jadi mengapa lelucon itu? Itu semacam datang sebagai respons modern terhadap refleks sekolah tua yang mengandalkan mengandalkan jQuery dan perpustakaan JS tambahan. Dengan spesifikasi ECMAScript dan kemampuan browser modern, kebutuhan untuk memotong JS polos dengan perpustakaan eksternal untuk menjaga konsistensi di seluruh browser sudah tidak ada lagi. Inilah situs yang menunjukkan kepada Anda seberapa benar hal ini dengan contoh nyata: http://youmightnotneedjquery.com/


1

Kata ini, karenanya, VanillaJSadalah lelucon yang mengubah hidup saya. Saya telah pergi ke sebuah perusahaan Jerman untuk wawancara, saya sangat miskin JavaScriptdan CSS, sangat miskin, jadi Pewawancara berkata kepada saya: Kami bekerja di sini dengan Vanilla , Jadi Anda harus tahu kerangka kerja ini .

Pasti, saya mengerti bahwa I'was ditolak, tapi untuk satu minggu saya mencari VanillaJS , Setelah semua, saya menemukan LINK INI . 😂

Saya hanya karena lelucon itu.

VanillaJS === plain `JavaScript`

1
Saya mendapatkan apa yang vanilla JS adalah lelucon
rodude123

0

Tidak ada perbedaan sama sekali, VanillaJShanya cara untuk merujuk ke JavaScript asli (tidak diperluas dan berbasis standar). Secara umum itu adalah istilah kontras ketika menggunakan perpustakaan dan kerangka kerja seperti jQuery dan React. Situs web www.vanilla-js.com menekankan hal itu sebagai lelucon, dengan berbicara tentang VanillaJSseolah-olah itu adalah kerangka kerja yang cepat, ringan, dan lintas platform. Itu mengeruhkan air! Dengan demikian, itu bisa menjadi pertanyaan filosofis kecil: "berapa banyak hal yang saya kompilasi ke Vanilla JavaScripttanpa menjadi VanillaJSdiri mereka sendiri?" Jadi, pedoman belaka untuk itu adalah: jika Anda dapat menulis kode dan menjalankannya di browser web apa pun saat ini tanpa alat tambahan atau yang disebut langkah kompilasi, itu mungkin saja VanillaJS.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.