Apa perbedaan antara JavaScript dan ECMAScript?


462

Apa perbedaan antara ECMAScript dan JavaScript? Dari apa yang saya simpulkan, ECMAScript adalah standar dan JavaScript adalah implementasinya. Apakah ini benar?

Jawaban:


183

ECMAScript adalah bahasa, sedangkan JavaScript, JScript, dan bahkan ActionScript 3 disebut "dialek". Wikipedia menjelaskan hal ini.


9
apa yang akan sangat baik adalah pemetaan yang jelas antara JavaScript dan versi ECMAScript, misalnya ES5 sesuai dengan JS1.5 dll. ah saya menemukannya: en.wikipedia.org/wiki/JavaScript#Versions
Sam Joseph

2
@ Sam - pembaruan tautan Sam: en.wikipedia.org/wiki/JavaScript#Version_history
Rop

65
Menurunkan dan meningkatkan Yang Li, karena jawaban ini mengatakan sangat sedikit dan pada dasarnya mengarahkan Anda ke Wikipedia. Jawaban Yang Li jauh lebih rinci dan bermanfaat. Juga, apakah satu adalah bahasa / standar dan dialek lainnya, atau implementasi dll terbuka untuk pendapat, dan bukan fakta, dari apa yang saya mengerti. Padahal jawaban ini membuatnya tampak fakta. Koreksi saya jika saya salah. Bahkan, saya berpendapat bahwa saran dari jawaban ini bahkan bukan konsensus populer. Seperti yang kebanyakan dilihat, ECMAScript memiliki standar dan JavaScript sebagai bahasa.
redfox05


5
Saya tidak setuju. ECMAScript adalah spesifikasinya. JS, JScript, ActionScript adalah bahasa yang mengimplementasikan spesifikasi tersebut.
adripanico

611

Saya pikir sedikit pelajaran sejarah adalah karena.

JavaScript awalnya bernama Mocha dan diubah menjadi Livescript tetapi akhirnya menjadi JavaScript.

Penting untuk dicatat bahwa JavaScript ada sebelum ECMAscript dan riwayatnya akan memberi tahu Anda alasannya.

Untuk memulai dari awal, JavaScript mengambil namanya dari Jawa dan awalnya Brendan Eich (pembuat JS) diminta untuk mengembangkan bahasa yang menyerupai Java untuk web untuk Netscape.

Namun, Eich memutuskan bahwa Jawa terlalu rumit dengan semua aturannya dan mulai membuat bahasa yang lebih sederhana yang bahkan dapat dikodekan oleh seorang pemula. Hal ini terbukti dalam hal-hal seperti santai dari kebutuhan untuk memiliki tanda titik koma.

Setelah bahasa selesai, tim pemasaran Netscape meminta Sun untuk mengizinkan mereka menamakannya JavaScript sebagai aksi pemasaran dan karenanya mengapa sebagian besar orang yang belum pernah menggunakan JavaScript berpikir bahwa itu terkait dengan Java.

Sekitar satu atau dua tahun setelah rilis JavaScript di browser, Microsoft IE mengambil bahasa dan mulai membuat implementasi sendiri seperti JScript. Pada saat yang sama, IE mendominasi pasar dan tidak lama setelah Netscape harus menutup proyeknya.

Sebelum Netscape turun, mereka memutuskan untuk memulai standar yang akan memandu jalan JavaScript, bernama ECMAScript.

ECMAScript memiliki beberapa rilis dan pada tahun 1999 mereka merilis versi terakhir mereka (ECMAScript 3) sebelum mereka masuk ke hibernasi selama 10 tahun ke depan. Selama 10 tahun ini, Microsoft mendominasi adegan tetapi pada saat yang sama mereka tidak meningkatkan produk mereka dan karenanya Firefox lahir (dipimpin oleh Eich) dan banyak sekali browser lain seperti Chrome, Opera.

ECMAScript merilis Edisi ke-5 pada tahun 2009 (edisi ke-4 ditinggalkan) dengan fitur-fitur seperti mode ketat. Sejak itu, ECMAScript telah mendapatkan banyak momentum dan dijadwalkan untuk merilis Edisi ke-6 dalam beberapa bulan dari sekarang dengan perubahan terbesar sejauh ini.

Anda dapat menggunakan daftar fitur untuk ECMAScript 6 di sini http://kangax.github.io/es5-compat-table/es6/ dan juga dukungan browser. Anda bahkan dapat mulai menulis Ecmascript 6 seperti yang Anda lakukan dengan CoffeeScript dan menggunakan kompiler untuk dikompilasi ke Ecmascript 5.

Apakah ECMAScript adalah bahasa dan JavaScript adalah dialek dapat diperdebatkan, tetapi tidak penting. Jika Anda terus berpikir seperti ini mungkin membingungkan Anda. Tidak ada kompiler di luar sana yang akan menjalankan ECMAScript, dan saya percaya JavaScript dianggap Bahasa yang mengimplementasikan standar yang disebut ECMAScript.

Ada juga bahasa lain yang terlihat yang mengimplementasikan ECMAScript seperti ActionScript (digunakan untuk Flash)


1
Bagi mereka yang tertarik tentang cara mengkompilasi / mengubah standar ES2015 baru ke kode ECMAScript 5, Anda akan ingin memeriksa Babel (sebelumnya 6to5) tersedia di babeljs.io atau traceur di github.com/google/traceur-compiler . Dengan alat-alat ini tersedia, tidak ada alasan Anda tidak dapat mulai menulis "JavaScript baru" sekarang, dan manfaatkan semua penambahan terbaru untuk bahasa tersebut.
LWurm

1
Saya tidak tahu bahwa Lua mengimplementasikan ECMAScript. Saya tidak bisa menemukan apa pun yang menguatkan itu. Apa sumbermu
battmanz

2
@YangLi Apakah Anda setuju dengan jawaban Jerone di bawah ini, bahwa bahasa ECMAScript tidak termasuk DOM API yang kita semua gunakan saat menulis JavaScript murni?
theJollySin

11
@ theJollySin Yap, dia benar. ECMAScript tidak dirancang khusus untuk browser sehingga metode seperti document.getElementById dan API DOM lainnya bukan bagian dari standar. Mereka termasuk dalam standar WHATWG, bersama dengan beberapa metode khusus browser lainnya seperti localStorage dll. Jika Anda mengambil node dan tidak menggunakan modul yang diimpor maka Anda memiliki API ECMAScript saja.
Yang Li

1
Bagaimana beberapa bahasa dapat menerapkan standar yang sama dan bukan bahasa yang sama? Standar mendefinisikan bahasa. Jika beberapa bahasa mengimplementasikan standar C ++, itu disebut C ++, bukan sesuatu yang lain (tepatnya karena mengimplementasikan standar itu). Jadi saya masih punya pertanyaan yang sama ... apa bedanya?
Neme

157

ECMAScript = ES:

  • ECMAScript adalah Standar untuk bahasa scripting.

  • Bahasa seperti Javascript didasarkan pada standar ECMAScript.

  • ECMA Standard didasarkan pada beberapa teknologi yang berasal, yang paling terkenal adalah JavaScript (Netscape) dan JScript (Microsoft).

  • ECMA berarti Asosiasi Produsen Komputer Eropa

JavaScript = JS:

  • JavaScript adalah implementasi paling populer dari ECMAScript Standard.

  • Fitur inti Javascript didasarkan pada standar ECMAScript, tetapi Javascript juga memiliki fitur tambahan lainnya yang tidak ada dalam spesifikasi / standar ECMA.

  • ActionScript dan JScript adalah bahasa lain yang mengimplementasikan ECMAScript.

  • JavaScript diajukan ke ECMA untuk standardisasi tetapi karena masalah merek dagang dengan nama Javascript standar tersebut disebut ECMAScript.

  • Setiap browser memiliki penerjemah JavaScript.

ES5 = ECMAScript 5:

  • ES5 adalah versi dari ECMAScript (lama / saat ini).

  • ES5 adalah JavaScript yang Anda kenal dan gunakan di browser hari ini.

  • ES5 tidak memerlukan langkah build (transpiler) untuk mengubahnya menjadi sesuatu yang akan berjalan di browser saat ini.

  • ECMAScript versi 5 selesai pada Desember 2009, versi terbaru dari semua browser utama (Chrome, Safari, Firefox, dan IE) telah mengimplementasikan versi 5.

  • Versi 5.1 selesai pada Juni 2011.

ES6 = ECMAScript 6 = ES2015 = ECMAScript 2015:

  • ES2015 adalah versi dari ECMAScript (baru / yang akan datang).

  • Secara resmi nama ES2015 harus digunakan sebagai pengganti ES6.

  • ES6 akan mengatasi banyak kekurangan bahasa inti yang dibahas dalam TypeScript dan CoffeeScript.

  • ES6 adalah iterasi berikutnya dari JavaScript, tetapi tidak berjalan di browser hari ini.

  • Ada beberapa transponder yang akan mengekspor ES5 untuk berjalan di browser.

BabelJS:

  • BabelJS adalah transpiler paling populer yang mengubah JavaScript ES6 baru menjadi JavaScript ES5 lama.

  • BabelJS memungkinkan untuk menulis generasi JavaScript berikutnya hari ini (artinya ES2015).

  • BabelJS hanya mengambil file ES2015 dan mengubahnya menjadi file ES5.

  • Versi browser saat ini sekarang dapat memahami kode JavaScript baru (ES2015), bahkan jika mereka belum mendukungnya.

TypeScript dan CoffeeScript:

  • Keduanya menyediakan gula sintaksis di atas ES5 dan kemudian ditranskompilasi menjadi JavaScript yang sesuai dengan ES5. 

  • Anda menulis TypeScript atau CoffeeScript kemudian transpiler mengubahnya menjadi JavaScript ES5.


3
" Javascript juga memiliki fitur tambahan lain yang tidak ada dalam spesifikasi / standar ECMA " Bisakah Anda memberikan beberapa contoh fitur tersebut?
Aruna Herath

1
" JavaScript adalah implementasi paling populer dari ECMAScript Standard. " Lalu di mana saya dapat menemukan sumber implementasi ini yang disebut 'JavaScript'?
bzeaman

7
Dengan pertanyaan saya, saya mencoba untuk menunjukkan kemungkinan kesalahan dalam kata-kata jawabannya. Kata 'implementasi' digunakan. JavaScript dikatakan ' implementasi paling populer '. Implementasi adalah ' realisasi spesifikasi teknis'. Yang diterjemahkan ke dalam perangkat lunak . Jadi saya bertanya-tanya di mana perangkat lunak ini disebut 'JavaScript'.
bzeaman

4
@Corrodias Saya akan setuju rasanya seperti memetik, tapi saya pikir itu masuk akal untuk dilakukan ketika jawabannya adalah tentang mendefinisikan sesuatu. JavaScript adalah bahasa, saat ini distandarisasi oleh ECMAscript sebanding dengan bagaimana C adalah bahasa yang distandarisasi oleh standar ISO. Suatu istilah untuk JavaScript kemudian hanya akan menjadi 'bahasa', tidak lebih.
bzeaman

4
Ringkasan ES5, ES2015 dan BabelJS benar-benar membersihkan udara pada banyak kebingungan yang mungkin ada ketika ia mendarat di dunia scripting JS hari ini dari pemrograman sisi server. Jawaban yang bagus +1
RBT

45

JavaScript = ECMAScript + DOM + BOM ;

  • Spesifikasi Bahasa ECMAScript® mendefinisikan semua logika untuk membuat dan mengedit objek, array, angka, dll ...

  • DOM ( D ocument O bject M odel) memungkinkan untuk berkomunikasi dengan dokumen HTML / XML (mis document.getElementById('id');.).

  • BOM ( B rowser O bject M odel) adalah hierarki objek browser (misalnya objek lokasi, objek sejarah, elemen bentuk).

Sejarah penamaan JavaScript:

Mocha ► LiveScript ► JavaScript ► (bagian dari JS menghasilkan) ECMA-262 ► ECMAScript ► JavaScript (terdiri dari ECMAScript + DOM + BOM)


7
Jadi apa yang ada di node.js bukan JavaScript? Karena tidak memiliki DOM API.
Aruna Herath

4
Itu benar. "Node.js dibangun melawan versi modern V8." & "V8 mengimplementasikan ECMAScript sebagaimana ditentukan dalam ECMA-262, edisi ke-5 ..." & "Namun, DOM biasanya disediakan oleh mesin JavaScript melainkan oleh browser. Hal yang sama berlaku untuk V8 — Google Chrome menyediakan DOM. " (Sumber: nodejs.org/en/docs/es6 & github.com/v8/v8/wiki/Introduction )
jerone

7
@ Jerone Versi ECMAScript apa yang saya gunakan saat saya menulis kode JavaScript? Apakah berbeda menurut peramban atau pustaka?
theJollySin

4
Bisakah Anda memberikan referensi JavaScript = ECMAScript + DOM API;?
Koray Tugay

2
@ koray-tugay Kecuali di sini, tidak ada banyak dokumentasi tentang apa sebenarnya JavaScript itu. Saya kira itu sebabnya pertanyaan ini sangat populer. "Formula" JavaScript = ECMAScript + DOM API;hanya berdasarkan pada keseluruhan persyaratan yang didokumentasikan yang didokumentasikan yang terdiri dari JavaScript.
Jerone

42

Secara teknis ECMAScript adalah bahasa yang digunakan dan diterapkan oleh semua orang - ini adalah spesifikasi yang dibuat bertahun-tahun yang lalu ketika Netscape dan Microsoft duduk dan berusaha untuk membakukan skrip antara JavaScript (bahasa skrip Netscape) dan JScript (Microsoft).

Selanjutnya semua mesin ini seolah-olah mengimplementasikan ECMAScript, namun JavaScript (namanya) sekarang bertahan karena kedua alasan penamaan tradisional, dan sebagai istilah pemasaran oleh Mozilla untuk berbagai ekstensi non-standar mereka (yang mereka inginkan untuk benar-benar "versi" )


12
Netscape dan Microsoft benar - benar rukun sekali ?!
Cole Johnson

2
Saya pikir Brandon ingin menjadikan JS sebagai standar sebelum Microsoft, dan satu-satunya yang bisa ia temukan adalah ECMA.
Joe Simmons

30

Apa itu ECMAScript yaitu ES?

ECMAScript adalah standar untuk bahasa scripting dan bahasa Javascript didasarkan pada standar ECMAScript.

Apakah Javascript sama persis dengan ECMAScript?

  • Tidak, Javascript tidak persis setara dengan ECMAScript.
  • Fitur inti Javascript didasarkan pada standar ECMAScript, tetapi Javascript juga memiliki fitur tambahan lainnya yang tidak ada dalam spesifikasi / standar ECMA.

JavaScript = ECMAScript + DOM API;

API DOM seperti: document.getElementById('id');

Apakah bahasa lain menggunakan standar ECMAScript?

  • Ya, ada bahasa selain JavaScript yang juga menerapkan ECMAScript Standard sebagai intinya.
  • ActionScript (digunakan oleh Adobe Flash) dan JScript (digunakan oleh Microsoft) adalah kedua bahasa yang menerapkan standar ECMAScript.

Mengapa disebut ECMAScript?

  • Javascript pada awalnya dibuat di Netscape, dan mereka ingin membakukan bahasa. Jadi, mereka diserahkan bahasa ke E uropean C omputer M anufacturer ini A ssociation (ECMA) untuk standardisasi.
  • Tapi, ada masalah merek dagang dengan nama Javascript, dan standarnya disebut ECMAScript, yang merupakan nama yang dimilikinya saat ini juga.
  • Karena masalah merek dagang, versi bahasa Microsoft disebut JScript - meskipun JScript, pada intinya, bahasa yang sama dengan Javascript.

Ada kursus tentang JS sederhana dan ES6 JS. Yang mana yang harus kita ambil? Apakah The ES6 lebih banyak digunakan dalam pengaturan profesional? Terima kasih.
MasterJoe2

16

Berbagai versi JavaScript adalah implementasi dari standar ECMAScript.


11

saya tahu ini posting lama tapi mudah-mudahan ini akan membantu seseorang

Pada tahun 1990-an berbagai versi js mulai keluar seperti javascript dari netscape, skrip Js dari Microsoft. Jadi ecmascript diperkenalkan sebagai standar. Tetapi ecmascript hanya merupakan bagian dari javascript yang menentukan sintaks intinya, jenis, objek dll. Mungkin itu menjelaskan implementasi javascript yang tidak konsisten di seluruh diff. browser

Referensi - Wrox (Javascript Profesional Untuk Pengembang Web)


10

Dalam pemahaman saya, ECMAScript adalah "Teori" atau "Spesifikasi", dan Javascript adalah "Praktis" atau "Implementasi".


10

JavaScript adalah bahasa skrip ECMAS.

ECMAScript tidak harus JavaScript.


7

Jawaban yang ada memparafrasekan poin utama dengan cukup baik.

Poin utama adalah bahwa ECMAScript adalah bahasa abstrak telanjang, tanpa ekstensi spesifik domain apa pun, itu tidak berguna dalam dirinya sendiri. The spesifikasi mendefinisikan hanya bahasa dan inti objek itu.

Sementara JavaScript dan ActionScript dan dialek lainnya menambahkan pustaka khusus domain ke dalamnya, sehingga Anda dapat menggunakannya untuk sesuatu yang bermakna.

Ada banyak mesin ECMAScript , beberapa di antaranya adalah open source, yang lain adalah milik. Anda dapat menautkannya ke program Anda kemudian menambahkan fungsi asli Anda ke objek global sehingga program Anda menjadi skrip. Meskipun paling sering mereka digunakan di browser.


5

Javascript adalah nama asli, dimaksudkan untuk memanfaatkan popularitas java. ECMA adalah badan standar yang mengawasi standar yang pada akhirnya diberlakukan sehingga nama-nama tersebut kira-kira setara.

Implementasi memiliki nama lain, seperti V8 atau Badak, dll.


3

ECMAScript adalah standar untuk JavaScrip t, lihat pernyataan dari MDN ini :

masukkan deskripsi gambar di sini

JavaScript

JavaScript (JS) adalah bahasa pemrograman yang ditafsirkan ringan atau dikompilasi JIT dengan fungsi kelas satu. Meskipun paling dikenal sebagai bahasa scripting untuk halaman Web, banyak lingkungan non-browser juga menggunakannya, seperti node.js, Apache CouchDB dan Adobe Acrobat. JavaScript adalah gaya berbasis prototipe, multi-paradigma, bahasa dinamis, mendukung berorientasi objek, imperatif, dan deklaratif (misalnya pemrograman fungsional) gaya. Baca lebih lanjut tentang JavaScript.


Naskah ECMAS

Standar untuk JavaScript adalah ECMAScript . Pada 2012, semua browser modern sepenuhnya mendukung ECMAScript 5.1. Browser lama mendukung setidaknya ECMAScript 3. Pada 17 Juni 2015, ECMA International menerbitkan versi utama keenam ECMAScript, yang secara resmi disebut ECMAScript 2015, dan pada awalnya disebut sebagai ECMAScript 6 atau ES6. Sejak saat itu, standar ECMAScript berada pada siklus rilis tahunan. Dokumentasi ini merujuk pada versi konsep terbaru, yang saat ini ECMAScript 2018.

Untuk info lebih lanjut, kunjungi di sini


3

Inilah temuan saya:

JavaScript: Panduan Definitif , yang ditulis oleh David Flanagan memberikan penjelasan yang sangat ringkas:

JavaScript dibuat di Netscape pada hari-hari awal Web, dan secara teknis, "JavaScript" adalah merek dagang yang dilisensikan dari Sun Microsystems (sekarang Oracle) yang digunakan untuk menggambarkan implementasi bahasa Netscape (sekarang Mozilla). Netscape mengirimkan bahasa untuk standardisasi ke ECMA dan karena masalah merek dagang, versi standar bahasa itu macet dengan nama canggung "ECMAScript". Untuk alasan merek dagang yang sama, versi bahasa Microsoft secara resmi dikenal sebagai "JScript". Dalam praktiknya, hampir semua orang menyebut bahasa JavaScript.

Sebuah posting blog oleh Microsoft tampaknya setuju dengan apa yang dijelaskan Flanagan dengan mengatakan ..

ECMAScript adalah nama resmi untuk bahasa JavaScript yang kita semua tahu dan sukai.

.. yang membuat saya berpikir semua kemunculan JavaScriptdalam pos referensi ini (oleh Microsoft lagi) harus diganti oleh ECMASCript. Mereka tampaknya benar-benar berhati-hati dengan ECMAScripthanya menggunakan halaman dokumentasi ini , lebih baru dan lebih teknis.

w3schools.com tampaknya setuju dengan definisi di atas:

JavaScript ditemukan oleh Brendan Eich pada tahun 1995, dan menjadi standar ECMA pada tahun 1997. ECMA-262 adalah nama resmi standar tersebut. ECMAScript adalah nama resmi bahasa tersebut.

Kuncinya di sini adalah: nama resmi bahasa tersebut .

Jika Anda memeriksa halaman versi JavaScript Mozilla , Anda akan menemukan pernyataan berikut:

Usang. Versi eksplisit dan keikutsertaan fitur bahasa adalah khusus Mozilla dan sedang dalam proses dihapus. Firefox 4 adalah versi terakhir yang merujuk ke versi JavaScript (1.8.5). Dengan standar ECMA baru, fitur bahasa JavaScript sekarang sering disebutkan dengan definisi awal mereka dalam Edisi ECMA-262 seperti ECMAScript 2015.

dan ketika Anda melihat catatan rilis terbaru, Anda akan selalu melihat referensi ke standar skrip ECMAS, seperti:

  • Properti ES2015 Symbol.toStringTag telah diterapkan (bug 1114580).

  • Metode ES2015 TypedArray.prototype.toString () dan TypedArray.prototype.toLocaleString () telah diterapkan (bug 1121938).

Mozilla Web Documents juga memiliki halaman yang menjelaskan perbedaan antara ECMAScript dan JavaScript:

Namun, istilah umum "JavaScript" sebagaimana dipahami dalam konteks browser web mengandung beberapa elemen yang sangat berbeda. Salah satunya adalah bahasa inti (ECMAScript), yang lain adalah kumpulan API Web, termasuk DOM (Document Object Model).

Kesimpulan

Menurut pemahaman saya, orang menggunakan kata JavaScript agak bebas untuk merujuk pada spesifikasi inti ECMAScript.

Saya akan mengatakan, semua implementasi JavaScript modern (atau JavaScript Engine) sebenarnya adalah implementasi ECMAScript. Periksa definisi Mesin V8 dari Google, misalnya:

V8 adalah mesin JavaScript kinerja tinggi open source Google, yang ditulis dalam C ++ dan digunakan di Google Chrome, browser open source dari Google, dan di Node.js, antara lain. Ini mengimplementasikan ECMAScript seperti yang ditentukan dalam ECMA-262.

Mereka tampaknya menggunakan kata JavaScript dan ECMAScript secara bergantian, dan saya akan mengatakan itu sebenarnya mesin ECMAScript?

Jadi sebagian besar Mesin JavaScript sebenarnya menerapkan standar ECMAScript, tetapi alih-alih menyebutnya mesin ECMAScript, mereka menyebut diri mereka Mesin JavaScript. Jawaban ini juga mendukung cara saya melihat situasi.


2

Saya ragu kita akan pernah menggunakan kata "ECMAScript" jika bukan karena fakta bahwa nama "JavaScript" dimiliki oleh Sun. Untuk semua maksud dan tujuan, bahasanya adalah JavaScript. Anda tidak pergi ke toko buku untuk mencari buku naskah ECMAS, bukan?

Agak terlalu sederhana untuk mengatakan bahwa "JavaScript" adalah implementasinya. JScript adalah implementasi Microsoft.


1
Saya tidak punya masalah dengan kata ECMAscript ... apakah Anda pernah berpikir itu aneh untuk mengatakan MPEG, bukan video?
ryansstack

7
Ha ha. Bukankah itu Brendan Eich yang mengatakan ECMAScript terdengar seperti penyakit kulit? :-)
Nosredna

7
Sun memiliki kata Java, bukan JavaScript.
James R. Clayton

1
@ JamesR.Clayton JavaScript dibuat di Netscape pada hari-hari awal Web, dan secara teknis, "JavaScript" adalah merek dagang yang dilisensikan dari Sun Microsystems (sekarang Oracle) yang digunakan untuk menggambarkan implementasi bahasa Netscape (sekarang Mozilla).
Koray Tugay

1

JavaScript adalah salah satu cabang bahasa yang dibentuk berdasarkan standar ECMAScript. Saya percaya ECMA adalah Asosiasi Produsen Komputer Eropa, bukan ini benar-benar relevan atau apa pun.

Jangan lupa bahasa populer lain yang terbentuk di sekitar standar ECMA Script adalah ActionScript, yang digunakan dalam Adobe Flash / Flex.

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.