ROGER ZURAWICKI: Halo semua. Bisakah saya mendapatkan perhatian Anda? Terima kasih, guys. Hari ini saya ingin berbicara tentang Meteor. Ini adalah kerangka kerja JavaScript. Kami akan melalui bagaimana Anda dapat membuat aplikasi web benar-benar keren. Sebelum kita masuk ke JavaScript, saya hanya ingin memberitahu kalian bahwa kehendak ini akan - Anda akan memiliki kemudian sepotong semester ini. Ini harus sekitar JavaScript. Saya pikir [Tak terdengar] pertama akan menutupi PHP hal web HTML sebelum kita pindah ke JavaScript. Dan dalam CS50, JavaScript dianggap seperti kode klien. Jadi hanya akan berjalan di browser web. Namun berkat kemajuan terbaru dalam teknologi, kita sekarang telah berhasil menjalankan JavaScript sebagai server juga. Jadi ini telah menciptakan benar-benar keren framework karena sekarang Anda dapat menulis sah kode yang sama untuk klien dan server. Dan ketika Anda mendefinisikan fungsi dalam Anda server, client Anda dapat memanggil fungsi yang sama. Dan itu membuat jauh lebih mudah. Padahal sebelumnya, jika Anda menggunakan PHP pada server, JavaScript di bagian depan end, Anda harus menulis fungsi PHP dan kemudian versi JavaScript dari fungsi yang sama untuk melakukan jenis pekerjaan yang sama. Jadi sebelum kita mulai, saya ingin menampilkan demo tentang apa Meteor bisa lakukan untuk Anda. Aku akan menunjukkan demo, yang adalah apa yang Anda akan dapat menciptakan oleh akhir seminar ini. Kami hanya pergi di sini. Ini adalah aplikasi Papan. Ini sebenarnya didasarkan dari contoh Meteor yang memberikan Anda. Meteor ini sangat bagus karena ketika Anda menginstalnya sebagai sebuah paket, Anda dapat pada dasarnya bermain-main dengan keempat demo. Dan Papan adalah pertama demo tersebut. Setelah seminar, saya mendorong Anda semua hanya mengeksplorasi demo lainnya karena saya pikir mereka benar-benar keren, dan mereka menunjukkan kekuatan Meteor. Jadi apa ini, ini adalah host di Leaderboard. Ini hanya terus terang daftar nama. Dan Anda dapat memilih orang. Mereka menjadi kuning. Dan kemudian Anda dapat memberikan mereka lima poin. Dan Anda akan melihat bahwa daftar ini diurutkan karena seperti yang saya memberi diriku lebih dan poin lebih, aku sekarang di atas. Jadi ini adalah di mana kita mulai. Dan apa yang Anda akan dapat mengambil dari seminar ini adalah beberapa fitur yang saya sudah ditambahkan ke Papan. Kami akan mencakup bagaimana, serta menambah lima poin untuk pemain, kita bisa menghapus pemain, kita bisa menambah pemain baru, dan kita bisa memilih bagaimana kita ingin untuk menyortir mereka. Dan ini semua panggilan API sangat mudah Meteor yang menyediakan untuk Anda. Anda juga memiliki fitur di sini untuk mengacak skor. Jadi apa yang benar-benar keren tentang hal ini adalah kalian benar-benar dapat semua pergi ke situs. Aku akan memasukkannya ke dalam teks yang lebih besar di sini. Satu-radikal-lead erboard.meteor.com. Dan ketika kalian pergi ke situs ini, Anda harus dapat mengedit situs, dan semua suntingan Anda akan terlihat untuk orang lain. Sehingga Anda dapat - yang kalian semua dapat terhubung ke situs ini? Jadi bermain-main dengan itu. Pergi dan mulai menghapus beberapa nama. Lihat apa yang terjadi. Jadi, Anda melihat semua orang bisa bermain. Ini hanya standar keamanan modus untuk Meteor. Anda melihat bahwa setiap orang dapat mengubah data satu sama lain. Jangan khawatir. Meteor memang memiliki keamanan. Ini adalah sangat mudah diimplementasikan fitur, di mana Anda bisa mengatur pengguna dan login. Tapi sekarang, siapa pun yang mengunjungi situs dapat memberikan diri mereka sebagai banyak poin yang mereka inginkan. Jadi saya selalu seperti ini karena ini adalah cara yang menyenangkan untuk memulai. Dan kemudian kami hanya akan bicara tentang rincian, bagaimana Meteor membuat ini mungkin. Jadi aku akan menutupi apa Meteor adalah, dan kemudian kita hanya perlu untuk menutupi dua prasyarat yang CS50 belum cukup tertutup. Tetapi pada akhir semester, Anda harus merasa nyaman dengan HTML dan JavaScript untuk benar-benar mendapatkan tangan Anda kotor bekerja dengan Meteor. Dan saya pikir itu hanya cara yang bagus untuk bahkan kurang nyaman siswa untuk melakukan tugas akhir karena mereka benar-benar dapat tinggal dalam satu bahasa, dan mereka bisa melihat perubahan dari mereka langsung bekerja. Jadi Slide ini menunjukkan hanya beberapa dari teknologi utama yang Meteor JS memberikan kepada Anda. Meteor bukanlah teknologi baru sendiri. Ini benar-benar konglomerasi semua hal ini berbeda kita miliki di internet. Serta HTML, CSS, JavaScript, kita memiliki beberapa teknologi seperti Node.js, yang adalah apa yang memungkinkan Anda untuk menjalankan JavaScript di ujung belakang pada Anda Server, serta beberapa JavaScript perpustakaan, seperti jQuery, Underscore. Semua ini akan menjadi familiar bagi Anda pada akhir semester. Dan kita juga bisa menggunakan database yang disebut MongoDB, yang merupakan benar-benar Database populer sekarang untuk ini startups baru. Anda dapat menganggap itu sebagai seperti MySQL, tapi ia bekerja dengan sangat baik dengan JavaScript. Dan ada beberapa teknologi lain di sini dan banyak lagi yang saya belum terdaftar bahwa semua antarmuka benar-benar baik dengan Meteor. Saya harus meletakkan geser ini karena kadang-kadang saya mendapatkan kebingungan tentang ini. Meteor hanya JavaScript. Ini bukan PHP. Hal ini tidak Ruby on Rails. Jadi jika Anda menulis kode, jika Anda ingin menulis sebuah proyek Meteor, Anda benar-benar tidak dapat menggunakan kode Ruby. Anda benar-benar tidak menggunakan PHP. Sementara kita akan melihat bahwa perbedaan kode dan sintaks mungkin tidak begitu berbeda, saya ingin menekankan kepada Anda bahwa Meteor, semua kode Anda adalah hanya dalam JavaScript. Dan segala sesuatu yang Anda tunjukkan kepada pengguna akan HTML CSS. Tapi kau tidak benar-benar menggunakan salah satu dari bahasa lain yang lain seminar mungkin menutupi. Apa Meteor juga adalah server web. Jadi bahkan jika Anda tidak memiliki JavaScript, dan Anda hanya ingin melayani CSS dan HTML file, Meteor dapat melakukannya untuk Anda. Dan inilah link lagi ke demo yang saya dapatkan kalian mulai bermain dengan. Tapi mari kita beralih ke HTML. Berapa banyak orang di sini memiliki tidak tahu apa HTML? OK besar. Dan yang benar-benar baik-baik saja. Anda benar-benar tidak perlu tahu banyak tentang karena kita akan pergi ke Penggunaan sangat sederhana. Inilah yang sederhana Halaman HTML terlihat seperti. Ini bisa menjadi seperti Anda halo, dunia untuk HTML, sedangkan kami mulai di C dengan halo, dunia. Aku tidak ingin kau menekankan pada rincian apa HTML, kepala apa, apa tubuh, judul apa yang dilakukan di sana. Saya hanya ingin menekankan struktur, bagaimana Anda memiliki tag. Dan itulah kurung sudut. Dan di situlah Anda memiliki deskriptor Anda. Jadi, Anda mungkin memiliki dokumen HTML. Dan kemudian Anda akan menutup dokumen HTML dengan backslash hal yang sama. Dan Anda memiliki berbagai jenis tag. Dan melihat bahwa mereka semua cocok. Anda harus seperti tag tubuh dan kemudian tag tubuh dekat. Dan di dalam tag body, yang akan isi halaman web Anda. Jadi halaman web ini hanya akan menampilkan di latar belakang putih dan teks hitam halo, dunia. Apakah itu masuk akal? OK. Sekarang aku akan cepat menutupi JavaScript. Dalam kata-kata seorang TF sebelumnya, "JavaScript adalah pemrograman terbaik bahasa yang ada saat ini. Orang lain akan mencoba untuk memberitahu Anda sebaliknya. Mereka salah. "JavaScript cukup bagus, dan saya akan menunjukkan kepada Anda mengapa. Jadi ini adalah contoh klasik kita mulai dengan di C. Kami memiliki halo, dunia. Dan Anda melihat bahwa bahkan jika Anda menyusut itu, Anda harus memiliki minimal dua baris kode di sini. Saya punya beberapa baris kode. Hal ini dapat dilakukan dengan sangat sederhana. Satu baris dalam JavaScript dengan console.log, dan kemudian string, halo, dunia. Sekarang, meskipun kita pindah ke yang baru bahasa JavaScript, hampir semua keterampilan yang telah Anda pelajari dengan coding di C secara langsung portabel. Jadi string, ide string dalam tanda kutip ganda, itu sama. Titik koma, itu sama. Sebuah fitur rapi tentang JavaScript sebenarnya adalah bahwa Anda tidak perlu titik koma. Hal ini bisa menebak bahwa Anda harus menempatkan titik koma di sana. Tapi mengatakan bahwa, Anda harus selalu mencoba untuk menempatkan titik koma Anda di sana. Ini dianggap gaya yang baik. Dan juga, tidak ada fungsi utama. Anda baru saja mulai di bagian atas file dan membaca hal-hal baris demi baris. Maka ini adalah apa yang diperlukan untuk membuat bahwa halo, Program dunia. Dan kemudian melihat bahwa Anda harus membuat halo halo dan kemudian jalankan. Dengan JavaScript, itu dianggap bahasa ditafsirkan. Apa yang perlu Anda ketahui adalah bahwa tidak ada keputusan. Tidak ada kompilasi. Anda hanya menjalankan simpul. Dan ingat node program yang akan menjalankan JavaScript pada konsol, pada kotak hitam, bukan website. Jadi Anda hanya memberikan file tersebut, dan itu akan mencetak halo, dunia. Aku benar-benar akan melakukan demo kecil bahwa untuk kalian di sini. Jadi mari kita pergi ke saya Terminal Node.js. OK. Mari kita pindah ke sini. Jadi aku akan mulai simpul. Dan aku akan menunjukkan kalian hanya sebentar bagaimana untuk mendapatkan bahwa diinstal, jika Anda tidak. Mari saya membuat sedikit lebih besar. OK. Saya harap kalian bisa melihat. Jadi saya bisa menulis kode seperti yang kulakukan sebelumnya di console.log. Hi, Roger. Dan perhatikan bahwa saya tidak perlu melakukan koma, tapi kemudian aku mendapatkan ini aneh Hal terdefinisi. Yah, sebenarnya, tidak apa-apa tentang hal undefined. Hal-hal yang ingin Anda perhatikan adalah bahwa Anda tidak perlu fungsi utama di sini untuk mulai menjalankan kode. Dan tidak ada akhir backslash. Ada beberapa fitur kecil yang JavaScript dapat lakukan untuk Anda. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Oh yeah. Saya minta maaf soal itu. Dan panah itu hanya berarti simpul siap perintah lain. Sehingga Anda dapat memilikinya lakukan sederhana matematika, seperti 1 ditambah 1. Dan seperti di C, matematika ini simbol sama saja. Aku bisa melakukan console.log nomor. Dan kemudian mencetak dua. JavaScript bagus dalam arti bahwa karena meskipun keduanya adalah sebuah int, seperti di C, jika Anda tidak printf dengan dua, Anda akan mendapatkan error. Tapi JavaScript tahu, oh, kau mencetak sesuatu. Aku akan membutuhkan sebuah string. Jadi biarkan aku mengkonversikan dua menjadi string untuk Anda. Dan Anda juga dapat melakukan beberapa hal aneh seperti hi dan kemudian ditambah dua. Ini hanyalah contoh lain bagaimana dua dapat dikonversi di sana juga. Jadi dengan itu keluar dari jalan, mari kita hanya menutupi sedikit lebih JavaScript. Jadi di C, kita memiliki tipe. Setiap kali kita membuat sebuah variabel baru, kita harus mengatakan bahwa itu itu char * atau string dalam kasus CS50. Atau jika kita memiliki angka desimal, kami harus mengatakan mengambang. Jika kami membutuhkan Boolean, kami harus mengatakan b. Dan kemudian setelah kami memiliki sesuatu yang itu b, itu harus tetap bool. Kita tidak bisa secara ajaib mengubahnya ke int kecuali kita menulis dalam kurung, int b. Dalam JavaScript, tidak ada jenis. Anda hanya menganggapnya sebagai var. Dan var adalah bagaimana Anda membuat jenis baru. Sehingga dapat memiliki var s menjadi string, var n menjadi pelampung, dan var b menjadi benar. Dan satu hal yang tidak dapat Anda lakukan di C adalah Sekarang saya bisa katakan, setelah itu garis, b sama dengan integer. Dan itu bekerja dengan baik. Sedangkan di C, akan mengatakan seperti bilangan bulat Anda tidak bool. Aku tidak bisa melakukannya untuk Anda. Atau [Tak terdengar] akan melempar kesalahan. Dan aku dapat dengan cepat kembali ke node dan menunjukkan beberapa fungsi itu. Jadi saya dapat memiliki var a. Sebut saja "Apple." Jadi, sekarang ketika saya mencetak, Saya mendapatkan saya string, 'Apple.' Tapi aku bisa juga sekarang mengatakan sama 3. Dan melihat tidak ada kesalahan. Dan sekarang sama 3. Ada pertanyaan sejauh ini? Ya. AUDIENCE: Tunggu, jadi console.log pada dasarnya printf, kan? ROGER ZURAWICKI: console.log adalah printf Anda. AUDIENCE: Benar. Jadi kenapa jika Anda hanya mengetik delapan atau [Tak terdengar], apa yang [Tak terdengar]? ROGER ZURAWICKI: Benar. Jadi - hal-hal dalam warna hijau akan dicetak di konsol. Dan apa yang kita lihat selanjutnya adalah ketika kita pindah ke web halaman, kita tidak akan melakukan - JavaScript akan memiliki HTML template, yang saya akan membahas dalam Meteor bagian dari seminar. Dan di situlah Anda dapat mengatakan, beri saya nilai, dan itu akan dimasukkan ke dalam website Anda. Karena setiap web browser yang sebenarnya memiliki konsol kecil. Dan jika Anda tampak sangat hati-hati, Anda akan mendapatkan beberapa informasi, seperti Anda printf yang muncul di sana dengan setiap halaman web Anda memuat. AUDIENCE: Bagaimana kau bisa ke layar shell? ROGER ZURAWICKI: Jadi ada perintah disebut node, dan dilengkapi dengan Meteor. Jadi saya hanya akan berhenti keluar dari sana. Node adalah program yang menjalankan JavaScript. Jika Anda pergi ke meteor.com, Anda dapat menginstal Meteor, dan Meteor dilengkapi dengan simpul. Karena Meteor hanya koleksi semua paket perangkat lunak ini. Ketika kami sampai ke contoh kita, saya akan berjalan orang melalui menginstal Meteor, dan kemudian Anda dapat bermain dengan simpul sendiri. OK, bagus. Jadi lain fitur yang hebat tentang bekerja dengan JavaScript loop adalah sama. Cukup banyak persis sama. Untuk loop, sementara loop, lakukan sementara loop, jika lain. Ini semua sama dengan kawat gigi. Ini sintaks yang sama. Dalam kasus untuk loop, kecil detail yang Anda harus memperhatikan untuk yang bukan int i sama dengan 0, kita harus mengatakan var i sama dengan 0. Tapi itu karena variabel jenis yang kita bicarakan sebelumnya. Perhatikan bahwa printf menjadi log, console.log a. Dan kita tidak perlu melakukan persen p backslash n dan kemudian lulus dalam i. Anda hanya bisa mengatakan saya. Dan itu akan mencetak angka dari nol sampai empat. Jika kalian ingin mencoba ini, karena Anda membawa sebuah titik yang baik. Jika Anda ingin menjalankan kode ini pada Anda Browser sendiri, saya akan merekomendasikan bahwa semua orang membuka Google Chrome. Google Chrome atau browser web benar-benar, tapi aku suka Google Chrome karena itu sangat standar. Anda dapat pergi ke, saya percaya, jika Anda benar klik pada situs web apapun, hanya di ruang putih, Anda akan melihat opsi disebut Inspect Element. Ini biasanya yang terakhir. Dan ketika Anda klik, Anda harus mendapatkan hal ke bawah muncul di sini. Biarkan aku memperbesar sini. Dan kami memiliki beberapa tab di sini. Yang Anda pedulikan adalah konsol. Dan ini adalah konsol JavaScript bahwa Anda sekarang dapat bekerja dengan. Besar. Jadi saya dapat mengetikkan hal yang sama Saya mengetik sebelumnya di simpul. Satu ditambah satu adalah dua. Var a sama dengan "Apple". Dan kemudian saya akan mencetak, dan adalah 'Apple'. Jadi dalam browser web, Firefox, Chrome, Safari, apa pun yang Anda gunakan, seperti selama Anda memiliki akses ke JavaScript konsol, jenis yang sama kode aku berlari di simpul Anda dapat berjalan di konsol Anda sendiri. AUDIENCE: [Tak terdengar]? ROGER ZURAWICKI: Cara sampai ke konsol? Anda harus klik kanan pada ruang kosong pada halaman, dan kemudian Anda pergi ke Inspect Element. Jadi sebenarnya, aku ingin kalian hanya pastikan Anda dapat Inspect Element di Chrome. Dan lihat ketika Anda mengetikkan beberapa kode ke konsol bahwa ia berjalan dengan benar. Jangan ragu untuk mengajukan pertanyaan jika sesuatu yang tidak jelas di sini. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Setiap jenis, tepat. Hanya ada satu jenis untuk semua variabel dalam JavaScript. Dan ketika Anda harus menyatakan variabel, Anda mengatakan var. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Ya. Memang, tapi dalam JavaScript, itu sangat cerdas tentang mengalokasikan memori. Tidak ada malloc. Tidak ada gratis. Jadi Anda tidak perlu khawatir tentang itu. Itulah fitur bagus lain yang JavaScript menyediakan. Jadi saya ingin pindah. Apakah itu baik-baik saja? OK. Besar. AUDIENCE: Aku hanya mengalami kesulitan menemukan [itu? Inspect Element. ?] ROGER ZURAWICKI: So Safari terlihat sedikit berbeda, tetapi apakah Anda memiliki Chrome atau Firefox? Mereka adalah lebih mudah orang-orang untuk bekerja dengan. Dan untuk proyek-proyek Anda, saya sarankan menempel dengan satu browser karena Anda akan mendapatkan banyak bug hampir karena setiap memperlakukan Browser JavaScript HTML sedikit berbeda. Jadi saya pikir hidup Anda akan menjadi jauh lebih lebih mudah jika Anda tetap untuk Chrome karena ini tersedia pada semua mesin. Dan itu adalah browser yang cukup populer. OK? Jadi topik berikutnya bahwa kita harus menutupi dalam JavaScript - Aku minta maaf tentang format di sini. Saya harus meregangkan slide untuk mencocokkan proyektor layar lebar. Tapi sekarang saya ingin bicara tentang bagaimana Anda melakukan fungsi. Dalam C, kita harus mendeklarasikan setiap fungsi. Seperti int menambah, dan dibutuhkan sebuah int ke x, dan int y, dan kemudian kita menambahkan mereka dan mengembalikannya. Dalam JavaScript, fungsi sebenarnya Jenis variabel lain. Jadi kita hanya mengatakan var menambah, dan itu sama dengan fungsi. Sebuah fungsi yang mengambil x dan y. Dan apa fungsi yang melakukan? Ia mengembalikan x ditambah y di sama persis sintaks seperti di C. Dan Anda melihat bahwa di JavaScript, Anda tidak akan diberitahu apa fungsi kembali karena sejak variabel tidak memiliki jenis pula, itu itu tidak benar-benar produktif, saya kira, akan menetapkan semua Anda jenis dalam fungsi Anda. Dan kemudian ketika Anda memanggil fungsi, itu sintaks yang sama persis seperti C. Anda hanya lulus dalam dua argumen Anda. Saya ingin mencoba ini di simpul saya. Dapatkah saya mengubah slide? AUDIENCE: [Tak terdengar]. Apakah kita mendapatkan salinan dari slide? ROGER ZURAWICKI: Ya. Jadi mari kita kembali ke node. OK. Jadi saya akan mengatakan var add sama dengan fungsi. Mengambil x, mengambil y. Dan kemudian ia tahu bahwa pernyataan itu tidak selesai. Jadi dalam node atau di konsol Anda, Anda akan melihat dot dot dot. Sehingga Anda dapat terus mengetik kode Anda. Dan sekarang aku akan mengatakan kembali x ditambah y. Dan kemudian menutup brace. Dan saat aku menutup brace, itu melihat bahwa pernyataan tersebut selesai. Dan sekarang saya dapat mengatakan menambahkan satu dan dua. Dan aku akan mendapatkan tiga. Perhatikan bahwa jika aku hanya menambahkan, hal itu memberitahu saya itu fungsi. Dan satu hal hanya untuk memperhatikan jika Anda memberikan nomor yang salah dari argumen, itu akan membuat. Ini akan berjalan, tetapi Anda mungkin mendapatkan beberapa hasil yang benar-benar aneh. Jenis seperti nilai sampah, Anda bisa memikirkan itu. Jadi silakan maju dan mencoba ini dalam browser Anda. OK, jadi untuk kepentingan waktu, saya akan sekarang beralih ke fitur berikutnya dalam JavaScript. Jadi kita sudah bicara tentang fungsi. Kami sudah berbicara tentang loop, jika pernyataan juga. Sintaksnya adalah sama sebagai C dan variabel. Dan sekarang saya ingin bicara tentang array. Aku menyesal bahwa slide mendapat sedikit terputus. Tapi sebenarnya, di bagian pertama, semua yang Anda butuhkan akan bekerja. Jadi kita memiliki jenis lain untuk variabel yang disebut array. Dan kita menggunakan tanda kurung siku untuk menunjukkan mereka. Jadi, dalam contoh pertama, var arr, array kosong. Ini adalah daftar kosong, jadi array tidak mengandung unsur-unsur. Dan Anda juga dapat memiliki sebuah array dengan tiga senar. Dalam C, setiap elemen dalam array harus tipe yang sama. Tetapi karena di JavaScript hanya ada satu jenis, array benar-benar dapat memiliki berbagai jenis nilai. Seperti di sini, kami memiliki sebuah array dengan pelampung, bool, dan int. Cara Anda mendapatkan panjang array, Anda tidak benar-benar harus menggunakan ukuran atau apa pun. Anda hanya mengatakan array dan kemudian dot panjang. Dan ini dot panjang, Anda bisa memikirkan itu jenis seperti struct, bagaimana setiap Array memiliki lapangan, sebuah variabel tambahan di dalamnya disebut panjang, yang melacak berapa lama array Anda adalah. Jadi aku hanya cepat akan masuk ke node dan menunjukkan kalian hal yang sama. Jadi saya bisa memiliki sebuah array. Hal ini dapat menjadi daftar kosong. Dan itu akan mencetak saya kembali daftar kosong. Besar. Sekarang saya bisa katakan bahwa array memiliki 1, dan 2.3, dan benar. Jadi semua jenis. Dan Anda melihat itu bekerja dengan baik. Array aku kembali mendukung semua nilai saya berikan. Jika saya ingin mendapatkan elemen pertama dari array, sintaks sebenarnya sama seperti di C. Anda dapat mengatakan Array nol. Dan Anda mendapatkan satu. Saya dapat mengatakan hal yang sama untuk array dua, dan saya mendapatkan yang benar. Jika saya melakukan sesuatu di luar dari array, JavaScript adalah bahasa yang aman karena saya tidak akan mendapatkan kesalahan seg. Aku akan terdefinisi. Dan ini undefined, Anda dapat jenis dari berpikir tentang hal ini sebagai null. Tapi itu dapat benar-benar menjengkelkan ketika Anda kode karena Anda harus memeriksa bahwa hampir semua yang Anda lakukan, Anda bekerja dengan tidak terdefinisi. Dan kita akan melihat beberapa contoh ini ketika kita bekerja di Meteor. Meskipun array yang empat tidak terdefinisi, Saya dapat menetapkan nilai. Jadi saya akan mengatakan itu sama dengan satu. Dan kemudian jika saya pergi ke array, saya memiliki nilai ekstra di sana. Dan perhatikan bahwa array tiga, yang juga yang terdefinisi, tetap tidak terdefinisi. Jadi saya sekarang memiliki sebuah array dengan lubang di tengah. Tapi kalau aku dicetak array yang empat, Saya akan mendapatkan satu. Jika saya melakukan berbagai tiga, saya mendapatkan undefined. Jadi fitur bagus yang JavaScript memungkinkan Anda lakukan adalah bahwa daftar dapat mengubah ukuran. Array, array yang daftar, mereka mengubah ukuran. Dan Anda dapat menentukan lokasi manapun dalam diri mereka. Dan semua celah akan diisi dengan nilai-nilai terdefinisi. Jadi kita sudah bicara tentang array. Sekarang, hal terakhir yang saya ingin menutupi dalam JavaScript, dan ini sangat penting untuk memahami kode yang Aku akan menunjukkan kepada Anda, akan menjadi obyek. Dan objek istilah dalam - pada dasarnya, mereka yang hadir dalam banyak bahasa pemrograman. Dan setiap bahasa pemrograman suka menganggap mereka sedikit berbeda. Tapi saya pikir untuk Meteor, baik yang analogi adalah struct C. Dalam C, jika kita ingin mencari struct mahasiswa, kita harus menentukan semua hal-hal di dalamnya. Jadi itu harus memiliki nama. Ia harus memiliki satu tahun. Ini harus memiliki gender. Tapi kita juga harus memberikannya jenis semua hal. Dan sekarang bahwa kita memiliki cetakan ini untuk struct disebut mahasiswa, kita dapat memiliki struct baru, dan kemudian kita bisa secara manual mengatakan apa masing-masing bidang yang. Dan di situlah kita menggunakan nama dot, dot tahun, dot gender. Dan kemudian kita hanya, di baris terakhir kode di sini, aku hanya mencetak keluar nama dari mahasiswa struct. Dalam dunia JavaScript, ada ada hal seperti struct mahasiswa. Anda tidak menghasilkan struktur yang telah ditetapkan. Anda benar-benar adil, dalam kurung tersebut, Anda mengatakan apa semuanya. Dan itu notasi aneh ini dengan usus besar dan kemudian koma, tetapi Anda akan bisa digunakan untuk itu cukup cepat. Dan itu sebenarnya sangat mudah, cara yang fleksibel hanya memanipulasi objek. Anda melihat bahwa jika saya ingin sekarang mendapatkan nama dari s, saya hanya melakukan s.name. Apakah ada pertanyaan tentang hal ini? Hal ini biasanya telah menjadi sangat membingungkan topik ketika kami memperkenalkan orang-orang untuk JavaScript. Saya akan melakukan beberapa contoh ini dalam simpul. Ya? AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Jadi Anda memiliki contoh, beberapa variabel dari tipe tersebut. AUDIENCE: [Tak terdengar]. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: OK. Jadi saya kira cara Anda akan pergi tentang adalah Anda akan menempatkan objek dalam array, dan sekarang Anda akan memiliki array objek. Apakah itu menjawab pertanyaan Anda? AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Ya. S adalah salah satu obyek. Jadi kita bisa masuk ke simpul dan hanya bermain-main sedikit. AUDIENCE: [Tak terdengar]? ROGER ZURAWICKI: Oh, OK. Jadi jika Anda bertanya apa yang kelas, Kelas diperlakukan sangat berbeda, dan mereka memiliki skema yang benar-benar aneh disebut prototyping, yang tidak Anda lakukan perlu tahu tentang. Tidak ada cara yang tetap untuk melakukannya. Jadi jika Anda ingin untuk menghasilkan beberapa, Anda akan hanya jenis memiliki fungsi atau sesuatu. Anda menghasilkan fungsi sendiri. Dan Anda akan kembali suatu objek. Itu akan menjadi yang paling mudah cara untuk melakukannya. Apakah itu masuk akal? OK. Besar. Jadi, sekali kita memiliki pemahaman tentang JavaScript benda, mereka - oh, ya. AUDIENCE: [Tak terdengar] Misalnya, apa perbedaan antara "Roger" dengan tanda kutip ganda dibandingkan [Tak terdengar] dengan tanda kutip tunggal. ROGER ZURAWICKI: OK. Jadi ini adalah di C, kita memiliki satu kutipan yang mewakili karakter, dan ganda kutipan yang mewakili string. JavaScript benar-benar melemparkan ini pergi karena Anda dapat memiliki string dengan tunggal atau tanda kutip ganda, dan ada ada hal seperti satu char. Tetapi jika Anda hanya disalin sama Kode C, JavaScript akan memperlakukannya dengan baik. Itulah sebabnya aku diperlakukan sebagai - itu sebabnya saya benar-benar dapat port kode dalam arti itu. Dan saya ingin menunjukkan contoh dari objek yang lebih rumit. Sehingga Anda dapat melihat bahwa satu objek dapat memiliki string sebagai nilai-nilai. Hal ini dapat memiliki daftar lain dari nilai-nilai. Ini bisa memiliki daftar objek sebagai nilai-nilai. Ada benar-benar ada batasan ini. Jadi di sini, itu hanya demonstrasi yang baik bagaimana Anda bisa mendapatkan banyak jenis yang berbeda terjadi semua dalam satu objek. Apakah ini masuk akal? Sekarang, Anda juga dapat memiliki array obyek. Dan di sini adalah sama halnya dengan apa yang Anda bertanya, jika Anda dapat memiliki objek jenis yang sama. Tapi masalahnya adalah, tidak ada tetap format untuk objek dalam JavaScript. Jadi, Anda harus menentukan mereka sendiri. Dan Anda harus memastikan bahwa mereka seragam. Jadi di sini, ketika saya membuat sebuah objek, saya memiliki memastikan bahwa masing-masing memiliki nama, dan masing-masing memiliki sebuah rumah. Dan kemudian saya memiliki sebuah array dari mereka, dan yang dapat saya pondok. Dan maka di sini Anda dapat jenis melihat untuk loop terjadi. Untuk loop yang hanya benar-benar umum cara untuk melintasi melalui array dalam JavaScript. Perhatikan bahwa pola ini sangat mirip setara dengan C, di mana Anda memiliki int i sama dengan nol. i kurang dari panjang. Dan kemudian saya plus plus. Ini hampir kode yang sama, kecuali untuk beberapa rincian. Jadi tidak semua orang memahami apa objek yang adalah? Hanya berpikir tentang hal itu sebagai struct C. Dan cara Anda mengakses bidang hanya dengan dot. Dan selama Anda ingat bagaimana menggunakan dot, Anda akan baik-baik saja. OK, jadi sekarang semua orang bisa membaca link itu? Ini adalah link ke proyek. Apakah ada yang mengalami kesulitan melihat link? OK, mari kita ubah kemudian. Ini bukan - Ya, itu mungkin Cara termudah untuk melakukannya. Besar. Jadi, jika Anda pergi ke situs ini, harus ada ada beberapa petunjuk yang aku akan pergi pada bagaimana kita dapat menginstal Meteor dan mendapatkan proyek sampel kami berjalan. Saya ingin memastikan semua orang memiliki link sebelum aku pindah. Dapatkah saya melanjutkan? OK, bagus. Jadi di sinilah aku di website. Anda akan melihat di file readme, kami memiliki beberapa petunjuk tentang cara untuk mendapatkan th mengatur. Anda harus baik dalam CS50 alat atau hanya pada Mac. Windows tidak akan bekerja. Tapi pada dasarnya apa pun yang tidak Jendela harus bekerja dengan ini petunjuk baik-baik saja. Tapi aku bisa membuatnya sedikit lebih besar juga. Jadi, Anda akan menjalankan pertama sepasang perintah. Orang-orang hanya akan menginstal Meteor. Aku bisa masuk ke terminal saya. Dan jika saya menjalankan hal yang sama sekarang, Aku sudah memilikinya diinstal. Jadi itu sedikit lebih pendek. Mungkin butuh sedikit lebih lama untuk kalian. Tapi aku ingin pertama pastikan bahwa kita memiliki Meteor berjalan. Setelah Meteor telah terinstal, Anda harus bisa mendapatkan simpul di konsol. AUDIENCE: Mereka bertanya untuk password. ROGER ZURAWICKI: Itu akan Anda password user, jika Anda pada Mac. Ini hanya membutuhkan izin untuk memodifikasi beberapa file sistem. Jadi pertanyaannya adalah, jika ia meminta Anda untuk password, itu hanya meminta Anda untuk username password Anda ketika Anda login ke Mac Anda. Dan ini adalah agar Anda dapat mengubah file sistem. Dan ketika Anda sudah siap, Anda dapat melanjutkan ke langkah berikutnya, yang akan menyalin contoh kode yang saya miliki dari situs web. Dan Anda akan mendapatkan sebuah direktori baru dalam direktori home disebut leaderboard, dan kita bisa mulai bekerja dari sana. Jadi aku hanya menyalin dan menyisipkan ini perintah ke terminal saya. Dan bagi saya, saya sudah kloning itu. Jadi aku bisa hanya sekarang pindah ke leaderboard. Dan saya harus memiliki beberapa file di sana. Ada pertanyaan? AUDIENCE: [Tak terdengar] tidak bekerja. ROGER ZURAWICKI: Oh, Anda mungkin perlu git terinstal. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Maaf? AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Oh, OK. OK. Itu karena Anda mungkin perlu login ke GitHub untuk mendapatkan link ini. Jika kalian dapat melihat bahwa, yang paling mudah cara untuk melakukannya saya kemudian akan katakan adalah men-download zip. Dan ini hanya akan men-download semua file. Dan kemudian setelah Anda memasukkannya ke dalam Anda men-download atau direktori rumah Anda - Saya sarankan memasukkannya ke dalam Anda direktori rumah sehingga kita semua bisa menjalankan perintah yang sama. Selama kita memiliki file, kita akan dapat mulai bekerja dengan mereka. Let me know jika orang mengalami kesulitan men-download file. AUDIENCE: By direktori home, maksudmu - ROGER ZURAWICKI: Jadi direktori home akan menjadi John Harvard, jika Anda berada di alat CS50. Untuk sampai ke direktori home Anda, ketik saja C. AUDIENCE: [Tak terdengar] CS50 alat [Tak terdengar]. ROGER ZURAWICKI: Ya. Anda ingin menjalankan perintah di dalam terminal. AUDIENCE: [Tak terdengar]. Saya mendapat error yang mengatakan tidak berkas atau direktori. ROGER ZURAWICKI: Kita bisa mengambil cepat istirahat dan hanya memastikan bahwa semua orang memiliki Meteor diinstal, dan aku akan hanya pergi mencoba untuk membantu orang keluar. Silakan coba untuk saling membantu jika Anda menjalankan menjadi masalah. Maaf, ya. Apakah Anda berdua dalam alat? AUDIENCE: Ya. Saya memiliki RISA ROGER ZURAWICKI: OK. Jika Anda kembali ke situs web, pergi gulir ke atas. Dan ada HTTPS ini. AUDIENCE: Salin ini? ROGER ZURAWICKI: Ya. Dan kemudian Anda ingin ketik git clone. Jadi, jika Anda menekan Control A - AUDIENCE: Di sini? Dan melakukan [Tak terdengar]? ROGER ZURAWICKI: G-I-T. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Git dan kemudian clone. Jadi itu sangat mirip dengan perintah Anda memiliki atas, tetapi URL berubah. Jadi sebelum itu ini, sekarang ini. Mari saya memperbarui - ya. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Ini di-download. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Oh, jadi tidak mengkloning dengan benar. Aku akan memperbaikinya. Ada kesalahan dengan mencoba untuk men-download file. Mari saya memperbarui perintah untuk kalian jadi saya dapat memastikan ia akan bekerja. Saya minta maaf soal itu. Ini harus sama untuk Mac atau CS50 alat. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Aku telah memperbarui perintah untuk nomor dua, jika Anda me-refresh halaman. Dan dengan ini, URL, Anda harus dapat men-download file. AUDIENCE: Jadi jika kita masih download [Tak terdengar]. ROGER ZURAWICKI: Jika Anda masih men-download Meteor? AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Ya, jika Anda ingin untuk mengembangkan pada Mac Anda. Tapi Anda perlu pengembang Xcode alat diinstal. Saya telah diuji perintah ini pada CS50 alat, jadi saya bisa menjamin bahwa ia akan bekerja. Ya. biarkan aku pergi dan membantu Anda. AUDIENCE: [Tak terdengar]. Aku memberikan password saya. Ini adalah Mac. Dan kemudian saya lakukan [Tak terdengar]. ROGER ZURAWICKI: OK. Saya akan mencoba menjalankan semua perintah hanya di terminal CS50 alat. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Aku akan membuatnya bekerja pertama di terminal, pada CS50 alat, dan kemudian terminal Mac. AUDIENCE: Jadi, jika Anda melakukannya pada CS50 appliance seperti itu, [Tak terdengar]. ROGER ZURAWICKI: Saya ingin pindah , tapi jika orang masih mengalami kesulitan menyiapkan Meteor, Kevin lebih dari senang untuk membantu kalian keluar, Kevin dalam kemeja abu-abu. Apa yang harus kita miliki adalah kita akan jalankan perintah terakhir, nomor tiga, di terminal kami. Ketika kita melakukannya, kita akan menjalankan Meteor. Dan Anda harus - oh, saya sudah memiliki Meteor berjalan. Jadi itu tidak akan membiarkan - biarkan aku hanya menutup lainnya Meteor saya. Ketika saya menjalankan Meteor, Anda sekarang harus melihat bahwa - Anda akan melihat direktori saat ini bahwa itu melayani. Dan sekarang itu akan mengatakan server berjalan pada http://localhost. Itulah URL Anda ingin menempatkan di dalam browser web Anda. Dan pada URL itu, Anda harus mampu mengakses leaderboard kecil yang bagus. Jadi melihat bahwa ini adalah pada localhost, yang berarti bahwa jika Anda melakukan perubahan, Anda tidak akan melihat perubahan masing-masing. Sedangkan di website saya menunjukkan Anda di awal, kita bisa mendapatkan perubahan semua orang karena semua orang sedang mengakses website yang sama. Jadi biarkan aku hanya pergi ke [? kata?] 3.000. Jadi, Anda harus dapat hanya mengkonfirmasi bahwa fungsi bekerja. Anda dapat memilih orang yang berbeda, dan Anda dapat memberi mereka titik yang berbeda. Jadi saya memberikan poin seseorang. Anda juga dapat melihat bahwa mereka kenaikan pangkat. Sekarang, untuk kepentingan waktu, ada tiga fitur yang saya sudah diimplementasikan. Dan kita akan menerapkan menghapus pengguna sebagai fitur pertama kami. Namun sebelum kita melanjutkan, adalah ada pertanyaan? Anda memiliki tanganmu. Ya? AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Dapatkah Anda memeriksa Meteor yang diinstal? AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: host lokal 3.000? Dan Anda berada di alat CS50? Aku bisa melakukan - Anda tidak harus berada pada Mac. Hal ini akan bekerja dalam alat. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Dalam normal browser web, yeah. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Apakah Meteor berjalan? Jadi OK, ada perbedaan di sini. Jika Anda menjalankan dalam alat, yang harus Anda lakukan localhost dalam alat. Jika Anda menjalankan di Mac Anda, seperti saya, maka saya bisa melakukan Mac Google Chrome. Tapi jika Anda menggunakan alat CS50, Anda harus melakukan segala sesuatu dalam alat. Jadi, Anda harus menggunakan Google Chrome di alat. AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Ini masih tidak bekerja? AUDIENCE: [Tak terdengar]. ROGER ZURAWICKI: Jadi hanya untuk mengulang, bagaimana Anda mengakses website sekarang. Anda memiliki URL di sini localhost 3.000. Jika Anda berada di alat CS50, Anda harus membuka CS50 alat itu Google Chrome. Dan pada Google Chrome dalam alat, Anda dapat mengetikkan URL itu, dan Anda akan melihat leaderboard. Jadi aku akan hanya menundanya ke sisi sini sedikit. Dan sekarang aku akan membuka saya editor teks di sini. Jadi biarkan aku hanya memastikan bahwa kode adalah dalam rangka. OK. Besar. Saya ingin sekarang berjalan melalui kode sedikit. Dan file pertama saya ingin memulai dengan yaitu leaderboard.html. Anda akan bisa mendapatkan kode ini setelah seminar, jadi saya hanya ingin menunjukkan Anda di komputer saya apa yang terjadi. Jadi saya berharap semua orang dapat melihat ini. Jadi di bagian paling awal file, kita memiliki kepala kami dan judul, yang mirip dengan apa yang kita lihat dalam setiap dokumen HTML. Dan kemudian kita akan memiliki tag badan di sini. Apa yang saya dipilih adalah utama tubuh, pada dasarnya apa yang akan bisa ditampilkan. Tetapi ada beberapa yang baru non-HTML hal, dan itu di kurung sudut ganda. Dan ini adalah tag template. Jadi, Anda akan melihat di sini braket ini leaderboard baru bracket. Dan ini adalah jenis - menganggapnya sebagai memanggil fungsi untuk HTML. Ini adalah versi khusus dari HTML. Ini adalah versi yang menggunakan Meteor, yang mengapa Anda dapat menampilkan yang berbeda hal, seperti leaderboard nama dan tombol. Tapi leaderboard memberitahu Anda untuk pergi ke template dengan nama leaderboard. Jadi Template tidak bisa ditampilkan oleh itu sendiri, tapi itu fungsi, sehingga akan dipanggil. Dan Anda akan mengganti dalam semua ini kode di sini dalam leaderboard. Bagian yang menarik dari leaderboard di sini adalah hanya tabel ini. Jika Anda hanya membacanya, membaca kode ini keras, itu harus intuitif karena leaderboard, semua yang kita miliki di sini adalah meja. ID ini kelas hal-hal yang tidak perlu khawatir tentang. Hanya tahu bahwa ada header tabel. Itu thead ini. Dan ia menemukan nama dan skor. Semua tag ini, seperti thtable, thead, Anda hanya akan belajar sambil jalan. Itu tidak penting bahwa Anda menghafal ini karena Anda hanya dapat mengakses referensi online. Atau pada akhir semester, ini hanya akan menjadi sangat akrab dengan Anda. Setelah header tabel, bagian yang saya ingin menggambar Anda perhatian adalah tag h ini. Karena itu dalam tanda kurung ganda, itu template. Jadi itu berarti untuk setiap pemain, pemain apa saja yang, kita harus menampilkannya. Dan kami pergi ke template player. Jika kita gulir ke bawah sedikit lebih - Saya harap semua orang bisa melihatnya. Kami memiliki template player. Dan template ini pada dasarnya mendefinisikan sel tabel, di mana Anda memasukkan nama di sini dan skor. Perkecil sekarang, kita dapat melihat bahwa serangkaian kode ini - dan itu adalah pemain kami di sana - mendefinisikan salah satu dari sel-sel ini. Setiap hal yang saya klik menjadi kuning. Sebuah cara sederhana saya bisa mengubahnya sekarang. Pastikan Meteor masih berjalan. Meteor harus menjadi proses server, sehingga Anda hanya meninggalkan berjalan ketika Anda kembangkan. Katakanlah saya ingin mengubah semua nama atau skor. Dan aku akan mengatakan aku akan untuk menambah poin di sini. Jadi perubahan saya buat di sini adalah, bukan hanya nilai, saya menambahkan skor poin ruang. Aku akan zoom out, dan aku akan menyimpan file saya. Dan setelah saya menyimpan file saya, saya perlu untuk memastikan Meteor berjalan. Maaf tentang itu. Saya ingin menunjukkan suntingan dilakukan secara real time. Jadi saya hanya akan mengubah beberapa teks. Klik pemain. Aku memasukkannya ke dalam semua topi. Dan itu harus bahwa jika ini bekerja benar, ketika saya simpan, itu akan memperbarui. Oh, saya pikir sekarang masalahnya adalah Saya tidak dalam direktori yang tepat. OK. Saya minta maaf soal itu. Jadi di sini, apa yang Anda perhatikan adalah perubahan saya pergi melalui. Sekarang mengatakan saya ingin kembali perubahan. Saya ingin kembali ke apa yang saya miliki. Aku hanya akan mengetik normal. Klik pemain. Saat saya simpan, yang situs menyegarkan bagi saya. Dan aku melihat perubahan saya di situs langsung. Ini adalah fitur yang sangat membantu dalam debugging karena sekarang Saya tidak perlu - ketika kita menulis kode C, tidak hanya kita harus menyimpan file, tapi kita harus membuatnya dan kemudian jalankan lagi. Meteor ini sangat bagus karena tidak seperti C, saat Anda menyimpan HTML atau File JavaScript, perubahan muncul segera. Satu pertanyaan adalah, dalam template ini, bagaimana saya mendapatkan nilai-nilai seperti pemutar atau pilih nama? Jika saya memperbesar sini ke dalam kode saya, Saya melihat ini untuk masing-masing pemain. Jadi template tahu bahwa Saya memiliki pemain entah bagaimana. Dan ia tahu bahwa ada nama yang dipilih. Dari mana ini berasal? Yang berasal dari JavaScript. Dan jika Anda pergi ke leaderboard.js, ini berkas, sekarang ketika saya pergi di sini, kami memiliki beberapa perintah yang ditetapkan. Ini adalah sintaks Meteor khusus. Perhatikan bahwa Anda tidak perlu vars atau apa pun. Tapi ini hanya structs pada structs pada structs atau benda-benda ini. Dan semua saya mendefinisikan adalah template disebut leaderboard. Papan harus mendapatkan hal yang disebut pemain. Dan apakah pemain? Ini apa ungkapan ini kembali. Dan apa nama yang dipilih? Ini beberapa kode lagi. Rincian kode kita akan menutupi sedikit kemudian. Tapi sekarang aku ingin kau mengerti bahwa dalam kode ini, kita mengambil pemain, dan kami memberikan nilai. Dalam hal ini, itu fungsi yang dijalankan. Jadi kita bisa mendapatkan nilai kembali ketika kita menjalankan fungsi. Ini adalah log. Apakah itu masuk akal? Aku dapat mengubah cara itu diurutkan. Di sini, ada benda semacam. Dan apa ini mengatakan ini aku akan mengurutkan dengan skor turun pertama dan kemudian nama naik. Jika saya mengubah ini ke salah satu, itu akan untuk mengurutkan nilai menaik. Jadi nol harus berada di atas. Dan ketika saya zoom ke website saya, kami sekarang melihat bahwa situs web diperbarui. Dan skor adalah naik. Fungsi berikutnya saya hanya ingin untuk menutupi adalah kenaikan klik. Dari kepentingan waktu, saya tidak akan dapat mencakup lebih dari Meteor kode, tetapi ada banyak sumber daya tersedia, dan saya akan di sini setelah seminar. Tapi aku hanya ingin menutupi peristiwa leaderboard. Sintaks ini Anda akan belajar bit kemudian dalam perkuliahan. Ini adalah JavaScript. Kita hanya mengatakan, ketika kita mendapatkan klik, dan itu pada kenaikan, ini hash hanya berarti ID. Pada tag ID kenaikan, maka kita ingin untuk memperbarui - kata-kata kunci yang saya ingin Anda untuk menonton adalah pembaruan dan pilih dan pemain. Jadi mana pemain yang dipilih, kami memperbaruinya. Dan apa yang kita lakukan adalah kita kenaikan skor sebesar lima. Dan itu akan menjelaskan fungsi kita miliki di sini. Setelah akhir seminar ini, kita akan dapat melihat beberapa kode lagi. Tapi kembali ke tujuan saya bahwa saya ingin mengubah situs, aku ingin di sini untuk menambahkan tombol hapus begitu Saya dapat menghapus pemain. Jadi untuk melakukan itu, saya perlu untuk melakukan dua hal. Aku harus memperbarui HTML, memperbarui melihat, apa yang akan ditunjukkan kepada pengguna, dan kemudian memiliki beberapa JavaScript bahwa ketika tombol ditekan, Meteor akan untuk melakukan sesuatu. Ini akan menghapus pemain itu. Jadi ada banyak potongan kode yang pada dasarnya sudah telah dilakukan untuk saya. Jika saya lihat di sini, saya sudah memiliki cara mendapatkan pemain yang dipilih. Itulah hal ini, jika Anda dapat melihatnya. Jadi jika saya hanya - Aku akan memiliki acara lain. Jadi aku akan menyalin apa yang saya miliki. Karena ini adalah daftar, Aku hanya perlu koma. Jadi sekarang aku akan klik hapus. Dan kemudian bukannya pemain pembaruan, Aku akan melakukan pemain hapus. Dan semua pemain menghapus kebutuhan adalah pemain yang dipilih. Jadi fungsi ini adalah semua yang kita butuhkan. Saya perlu menambahkan beberapa HTML di sini meskipun. Jadi jika saya gulir ke bawah sini, ini adalah pandangan HTML. Kami memiliki hal di sini, yang merupakan tag. Anda tidak perlu khawatir tentang itu. Apa yang penting bagi Anda adalah ID kenaikan ini. Dan inilah yang memungkinkan kita untuk mengatakan, ketika kita mengklik kenaikan, kita harus memberikan lima poin. Dan Anda akan melihat bahwa ini adalah sebuah tombol. Itulah yang berarti btn tersebut. Dan teks di tombol adalah memberikan lima poin. Jadi apa yang akan saya lakukan adalah aku akan menyalin baris ini. Aku akan mengubah ID untuk menghapus. Dan aku akan mengubah teks disini untuk menghapus. Jadi pastikan semuanya disimpan. Saya ingin kembali ke saya JavaScript memastikan bahwa saya memiliki menghapus berbaris di sini. Baik. Jadi aku akan menyimpan kedua file. Setelah menyimpan kedua file, kita bisa kembali ke bawah. Dan sekarang kita melihat kita memiliki tombol hapus. Dan satu langkah lagi. Anda melihat Anda mungkin mendapatkan error karena ketika saya klik menghapus, tidak ada yang terjadi. Sebuah cara untuk debug ini adalah untuk pergi kembali ke Inspect Element. Aku melakukan ini dengan sengaja sehingga Anda dapat melihat bagaimana Anda akan men-debug sesuatu. Dalam Inspect Element, kita memiliki semua teks kami di sini. Saya ingin kembali ke konsol. Dan apa yang terjadi ketika saya pergi di sini adalah saya mendapatkan beberapa jenis kesalahan. Ia mengatakan tidak ada metode hapus. Jadi apa ini katakan adalah ketika saya pergi kembali ke kode, aku menelepon pemain menghapus sini. Hapus sebenarnya tidak perintah yang tepat. Jadi untuk mengetahui apa perintah yang tepat adalah, ada Meteor API. Dokumentasi saya ingin menunjukkan Anda orang untuk hanya di meteor.com. Jadi saya memilikinya di sini. Ini hanya begitu kalian tahu di mana untuk mempelajari lebih lanjut. Ada link ke dokumentasi. Dan pada dasarnya, saya hanya bisa tidak menemukan untuk menghapus. Dan apa yang Anda lihat, hapus sebenarnya hapus. Itu adalah perintah yang Saya perlu menelepon. Jadi sekarang kita tahu bahwa, aku akan untuk mengubah ini menghapus untuk menghapus. Jadi sekarang, ketika saya kembali ke leaderboard saya situs, aku akan klik menghapus, dan sekarang aku pergi. Tidak ada lagi Roger. Dan aku bisa terus menghapus setiap Nama tunggal sampai aku punya apa-apa lagi. Jadi itu preview kecil bagaimana menggunakan Meteor. Anda akan belajar lebih banyak JavaScript dan HTML yang diperlukan untuk membuat terlihat lebih cantik, yang akan kita bahas dalam minggu ini [? piece?] ditetapkan untuk HTML dan JavaScript di akhirat [? piece?] ditetapkan. Jadi jangan khawatir jika tidak semua hal ini datang mudah bagi Anda. Ini akan pada saat proyek akhir. Terima kasih untuk muncul. Link saya akan update segera setelah seminar sehingga Anda dapat melihat lebih banyak contoh yang saya telah diimplementasikan pada bagaimana untuk mendapatkan leaderboard lebih maju yang saya miliki di website ini di sini di satu-radikal-leaderboard.meteor. Terima kasih. [Tepuk Tangan]