Halo Halo teman-teman selamat datang di course javascript object oriented programming dimana disini kita akan belajar bahasa pemograman Java script ya Fokusnya ke object oriented programming nya Ok sebelum kita masuk ke materi kita akan kenalan dulu jadi Nama saya adalah Eko Kurniawan khannedy saat ini saya kerja sebagai teknik lasitech di salah satu e-commerce terbesar di Indonesia Saya sendiri sudah kerja lebih dari 10 tahun dan disela-sela kesibukan saya bekerja Saya biasanya menyempatkan diri untuk berbagi konten soal programming dan juga video soal programming di program kerja mana websitenya atau di youtube channel programmer zaman now Oke kalau teman-teman ingin diskusi secara langsung dengan saya teman-teman bisa kontak saya lewat telegram atau jangan lupa juga follow sosial medianya program zaman now ada di Facebook stagram YouTube dan juga ada di telegram channel kau teman-teman ingin Adam akan mentoring ataupun soalnya konsultasi dari perusahaan teman-teman teman-teman juga bisa kontak lewat email saya ya Oke sebelum teman-teman belajar jadi pastikan dulu teman-teman sudah mengikuti chord saya yang sebelumnya yatch teman-teman perlu mengerti beberapa hal dulu sebelum mengikuti kursi nih karena kalau langsung korsini nanti mungkin agak Mimi membingungkan ya jadi beberapa hal yang perlu teman-teman pelajari yang pertama itu adalah html CSS ini udah harus ngerti ya saya teman-teman harus sudah ngerti dengan tenang aja Paskib dasar jadi ini teman-teman perlu sudah mengerti tentang javascript dasar kalau teman-teman belum mengerti tonton bisa lihat di kos yang sebelumnya saya buat di sini ya Ya teman-teman bisa liat di sini ya untuk mempelajari tentang javascript dasar Oke materi ini agendanya apa sih materi ini agendanya akan fokus membahas object-oriented programming atau dalam bahasa Indonesia adalah pemograman berorientasi objek dimana disini kita akan prakteknya menggunakan javascript Oke jadi kita akan berkenalan dengan gitu object-oriented programming nanti teman-teman akan belajar bagaimana cara membuat class membuat objek mengenal tentang pewarisan atau inheritance belajar tentang iterable denitrator santet Nanti kalau saya ada kita akan bahas tentang javascript pas ya dan juga masih banyak yang lainnya eh jadi materinya lumayan banyak Oke Enggak usah berlama-lama kita akan masuk langsung ke materi Sekarang kita akan berkenalan dulu dengan Apa itu object-oriented programming object-oriented programming adalah sudut pandang dalam pemograman yang berkonsep objek Jadi sebenarnya ada banyak sekali ya sudut pandang masuk program and dan saat ini kalau teman-teman perhatikan object-oriented programming adalah sudut pandang bahasa pemograman yang paling populer ada yang lain sebenarnya Seperti contohnya functional programming atau prosedural seperti itu ya atau ada yang bilang juga imperatif programming seperti itu tapi saat ini yang paling banyak Hai Adan adopsinya paling tinggi adalah object oriented programming jadi tidak hanya di javascript misalnya ada juga object-oriented programming diadopsi di pasar pemograman yang lain juga yang populer seperti misalnya Java si plus-plus piton PHP dan yang lain-lain jadi hampir rata-rata kebanyakan besar momen itu mengadopsi object-oriented programming ada beberapa istilah yang teman-teman perlu Perhatikan ya dalam object-oriented programming yaitu adalah objek dan juga class namanya juga pemograman berorientasi objek jadi ada penekanan kata obyeknya jadi teman-teman perlu mengatur tentang objek dan juga class sebenarnya kata objek ini sendiri kita sudah kenal ya DJ pasif dasar teman-teman sudah tahu ada tipe data objek Nah sekarang kita akan bahas Lebih Detail nya tentang konsep object oriented programming nya oke pertanyaannya air papa itu adalah objek jadi semuanya teman-teman harusnya udah tahu ya tekanan di javascript biasa kita udah bahas apa itu objek jadi kita flashback lagi objek itu adalah data yang Devil tattoo properties atau juga ada yang bilang atribut ini tiga-tiganya sama saja ya dan juga method atau function atau be higher Dadi objek itu ya isinya adalah data yang berupa field ya atau juga method atau function jadi sesederhana itu Oke selanjutnya Apa itu class Nah kalau kelas adalah blueprint blueprint atau Prototype jadi atau maksudnya inilah cetakan untuk membuat objek Jadi kalau sebelumnya kita kalau misalnya bikin data dalam bentuk objek di javascript dasar Ya itu kan kita langsung bikin aja ya Aswaja bikin obyeknya gitu ya nah jadi mirip kayak bikin Arai bikin sering langsung aja dibikin gitu ya Nah kalau misalnya dalam object-oriented programming sebelum kita membuat sebuah objek kita perlu bikin kelasnya dulu ini sebagai cetakan jadi sebagai blue printnya jadi kalau saya kita mau bikin jenis data amal kita perlu bikin kelas atau lebih dahulu nanti dari kelas itu itu akaya semacam cetakan ya cetakan untuk membuat objek Mbak nanti kita akan bikin dari class tersebut baru objek-objek nya Nah sederhananya sebenarnya kelas itu nanti berisikan deklarasi semua properties dan juga function yang dimiliki oleh objek Heeh Jadi maksudnya apa Jadi maksudnya kau teman-teman sebelumnya akan bikin objek kita bebas ya Oh gitu ya udah bebas kita bikin objek teman-teman mau diset ada beberapa atribut ada berapa function itu enggak terlalu peduli ya Jadi kita bebas Nah kalau misalnya dalam object-oriented programming idealnya teman-teman deklarasikan kelasnya dulu kenapa biar terprediksi nanti kira-kira ada apa aja fieldnya dan juga ada apa aja functionnya seperti itu Nah setiap objek selalu dibuat dari kelas ya ini idealnya Sebenarnya kalau saya dalam object-oriented programming tapi yang namanya javascript itu dari awal teman-teman bisa bikin objek tanpa ada class sebenarnya Tapi idealnya kalau teman-teman bikin objek ya harusnya ada kelasnya biar lebih rapi dan juga lebih terprediksi ya kira-kira data OBB ini apa aja dan sebuah kelas bisa membuat objek Tanpa Batas Jadi beneran kelas itu cuma sebagai cetakan saja jadi teman-teman bisa bikin objek dari cetakannya jadi cetakannya cukup satu nanti teman-teman bikin obyeknya berkali-kali beratus-ratus itu enggak ada batasannya Oke kurang lebih seperti ini ya Jadi kalau misalnya kita bilang di sini ada sebuah class nama kelasnya adalah person ya Nah ini adalah Clash Clash itu isinya nanti adalah definisi dari ininya atributnya atau propertinya caranya di sini kita punya first name dan juga punya last name satu disini punya function yang namanya si Hello dan juga say goodbye jadi ini ini adalah kelasnya kelas itu tidak bisa langsung dipakai ya karena kelas itu semacam eh blueprint atau Prototype atau ya cetakan aja gitu ya ya dia bukan data nah gimana kalo kita pengen bikin datanya Nah datanya itu bentuknya adalah objek jadi nanti kita akan bikin nya dari blueprint ini dari kelas ini kita akan bikin objek contohnya kita akan bikin objek dengan nama obyeknya adalah Eko lalu teman-teman tinggal set propertinya bisanya Force namanya ecolabs namanya Eko ini misal saja gitu ya Nah ini Eko rasanya Saya mau lagi deh bikin objek version gitu ya tapi yang Joko Nah kita bisa bikin dari kelas ini ya kita akan bikin objek lagi namanya Joko lalu disini Force namanya adalah Joko dan lainnya adalah Nugroho nah ini dua objek yang berbeda Ya anggap aja nih variabel Eko ini variabel Joko dua-duanya objek yang berbeda tapi berasal dari satu kelas yang sama Edi seperti itu Oke selanjutnya kalau teman-teman mau bikin lagi yang ketiga tonton bisa bikin lagi contoh disini Budi ya di sini kita bikin objek budi atau variabel Budi lalu di sini ada Force namanya Budi dan lainnya Nugraha jadi dari satu kelas kita bisa bikin tiga objek dan tiga objek ini tidak ada hubungannya satu sama lain ya ya udah bikin objek Yaudah tidak tidak nyambung sama sekali istilahnya eh jadi Jangan berpikir kalau kita rubah first name Eko Joko dan Budi itu berubah enggak enggak seperti itu Eh jadi ini benar-benar isolat ya antara obyeknya masing-masing cuma Dia berasal dari blueprint atau class yang sama Oke contohnya lagi kalau kita misalnya punya Clash ya namanya karr lalu di sini kita punya properti namanya named dan juga brand lalu dia punya functions that engine dan stop engine jadi ini kelasnya atau cetakannya ini teman-teman ketika bikin objek ke Tinggal bikin objek teh disini Avanza Almas dan Mobilio dan tiga-tiganya tidak ada hubungannya satu sama lain ya teman-teman boleh lebih dari tiga ya boleh bebas yang tadi saya bilang ya tidak terbatas Jadi teman-teman bebas yang penting teman-teman bikin satu kelasnya ya untuk deklarasikan kira-kira blue printnya Seperti apa Nanti ketika kita cetak sebuah objek yaitu bebas mau berapapun objek dan GTA kita rubah dan projectnya objek yang lain tidak ikut berubah jadi cuma untuk objek tersebut oke nah sekarang pertanyaannya Apakah seiring itu ya Apakah serapih itukah implementasi object-oriented DJ pasif nah dia pasti itu sebenarnya ya dari awal sendiri itu yaitu dibuat sebagai bahasa yang prosedural Jadi bukan bahasa yang berorientasi objek Oleh karena itu mungkin kalau teman-teman nanti coba implementasi ya object-oriented programming javascript mungkin tidak sedikit LDII bahasa pemograman yang lain seperti contohnya di Java atau disiplin plus karena memang dari awal sejak pasif ini memang biasanya prosedural ya bukan beneran object-oriented programming jadi objek ragam itu sebenarnya baru-baru sekarang diimplementasi unci kelas dan sebagainya nanti kita bahas ya Jadi baru-baru yang javascript modern ini Nah kenapa tidak langsung dirubah saja kalau gitu jawabnya ya karena kan kita harus main teh namanya before compatible gitu ya jadi jangan sampai di nah eh bahasanya otomatis semua yang lama itu enggak jalan jadi enggak mau seperti itu Jadi mungkin nanti walaupun javascript itu sekarang sudah ada fitur object-oriented programming nya tapi memang tidak sedetail implementasinya seperti di bahasa pemograman yang beneran murni object-oriented programming Sekarang kita akan bahas tentang membuat kontraktor function mungkin agak sedikit kurang familiar ya Apa itu kontraktor function Jadi sebenarnya kan di materi yang javascript dasar kita sudah belajar tipe data objek ya Nah dengan menggunakan tipe data objek ya caranya kita membuat variabel dengan tipe data objek itu udah kita bahas Yadi materi javascript dasar namun pembuatan objek menggunakan tipe data objek itu akan membuat obyeknya selalu unik ya Maksudnya apa Maksudnya tiap objek-objek yaitu ya bisa dia beda gitu ya kadang-kadang dalam object-oriented programming itu biasanya kita akan membuat class sebagai cetakan seperti yang sebelumnya sudah saya jelaskan ya kita bikin kelas dulu sebagai cetakan sehingga kita bisa membuat objek dengan karakteristik yang sama berkali-kali ya tanpa harus mendeklarasikan objek berkali-kali seperti menggunakan tipe data objek Kennedy teman-teman bakal lihat perbedaannya ya kalau bikin objek menggunakan objek langsung kurung kurawal seperti itu atau menggunakan class di Java script Oke ini kalau teman-teman mau membuat objek ya dengan tipe data objek jadi kalau kita mau bikin ada dua variabel atau dua objek Eko dan objek Budi gitu ya Nah dua-duanya punya Force 6 dan juga lasne maka teman-teman harus bikinnya seperti ini ya jadi kayak dicopy paste lah ini ya ininya jadi kayak dicopy paste itu jadi seperti itu hasilnya jadi ini kalau kita membuat objek eh dengan objek yang biasa kita sudah lakukan di javascript dasar Oke kalau kita masuk ke kode jadi ya mungkin seperti ini ya kita akan bikin disini palate email objek misalnya Oke jadikan Biasanya kita bikin kalau misalnya objek ya tinggal count.com saya jadi Eko ini sebanyak variabel tapi kita bilang juga dia adalah objek ya jadi sama dengan langsung ya kurang Rawa seperti ini atau misalnya konsep Budi sama dengan seperti ini nah cuma kalau kita bikin seperti ini ini berarti objek Eko dan objek Budi Itu dia unit-unit tuh maksudnya apa kita enggak bisa Tentukan gitu ya tiap bikin objek selalu ada vulschem atau Lasem kayak gitu itu enggak bisa karena ya bebas jadinya kayak orang yang bikin sebebasnya mungkin mengerti ya terserah karena ini tipe data objek jadi teman-teman mau nambahkan properti apapun bebas dari kau usia Porsche name ekologisnya disini pakai bahasa Indonesia nama depan Budi Itu bisa bebas Kenapa karena tidak ada aturannya kalau kita bikin langsung pakai objek nah biasanya dalam object-oriented programming itu kita enggak langsung bikin obyeknya seperti ini tapi kita bikin semacam kelasnya dulu atau cetakannya dulu Nah dari cetakan itu baru kita bikin obyeknya ya oke Seperti apa Jadi sebelum versi javascript yang versi ecmascript versi 6 itu pembuatan class biasanya menggunakan sebuah function jadi seperti yang sebelumnya saya jelaskan jadi diawal itu javascript Itu bukan bahasa pemrograman yang berorientasi objek ya jadi memang dari awal dia bahasa pemograman yang prosedural jadi berbasis function Eh nah Oleh karena itu kita sekarang akan belajar dulu gimana cara javascript versi lama gitu ya sebelum ecmascript versi 6 itu gimana cara implementasi op nya nanti kita Mbah juga ya di ecmascript versi 6 jadi gimana implementasi op di dalam javascript yang baru Nah sekarang kita akan fokus ke yang versi lama dulu biar teman-teman kebayang yang baru tuh sebenarnya bukan fitur baru semuanya tapi lebih ke syntax baru tapi ujung-ujungnya implementasinya mirip kayak javascript versi lama jadi biasanya ya kita membuat function lo ini maksudnya apa nih kok bikin function gitu ya kan kita maunya bikin class nah nah untuk membuat kolase javascript lama kita bisa membuat pangsun ya dan fungsinya itu kita namakan dengan nama kontraktor function jadi nama panggilan itu kita bilang dia adalah kontraktor function jadi jenis function yang berbeda namanya adalah kontraktor function nah oke Seperti apa cara pembuatan kontraktor pancen Ya seperti function biasanya ya tinggal function nama panggilannya nah tapi khusus untuk kosaster pension best praktisnya adalah teman-teman menggunakan di awal kata itu menggunakan APK huruf besar jadi kalau version itu bukan huruf kecil semua version enggak tapi pc-nya huruf besar kalau misalnya ada dua karakter misalnya premium member bisa seperti itu ya Nah teman-teman pakainya premium p yang besar member m-nya besar seperti itu ya Oke kita akan B ke kode jadi disini kita akan saya post ya Jadi kita akan bikin dulu kontraktor functionnya dengan cara membuat function lalu disini nama function kontraktornya contohnya person seperti ini Jadi ini kontraktor function Jadi mirip kayak langsung biasa sebelumnya Yah enggak enggak ada bedanya sebenarnya Nah kalau teman-teman ada dua kata itu Usahakan pakai depannya huruf besar karena ini best practice nya contohnya premium member seperti ini jadi pengennya besar disini dan m-nya besar ini best practice nya ya A tolong diikuti jangan premium member seperti ini ini dianggapnya ya dan walaupun ini bisa dibilang kontraktor function tapi ya mirip kayak pangseng biasa kalau ini jadi kalau kontraktor ponsel biasanya diawali huruf besar seperti ini Oke kita ganti per sen Oke selesai jadi seperti ini cara teman-teman bikin kontraktor function eh Oke selanjutnya untuk membuat objek dari kontraktor function ya teman-teman bisa gunakan kata kunci yang namanya new Jadi kalau teman-teman sebelumnya belajar bahasa pemrograman seperti javascript atau PHP sama untuk membuat objek itu kita menggunakan kata kunci new lalu diikuti dengan nama kontraktor function nya jadi kalau semen sebelumnya teman-teman Kalau mau bikin objek itu langsung pakai kurung kurawal Kalau sekarang enggak kita akan bikin obyeknya menggunakan kata kunci new Ya seperti apa jadi seperti ini jadi kalau teman-teman bikin function person gitu ya ini kontraktor function kita akan kalau bikin objek ekornya tinggal sama dengan new version kau membikin objek Budinya = new version jadi seperti ini caranya bukan lagi menggunakan kurung kurawal lagi Oke kita akan coba jadi di sini kita akan buat conseco = new version Ya seperti ini konsep Budi sama dengan New verson nah seperti ini Jadi ini cara membuat objek jadi ini kita anggap kelasnya ya walaupun javascript namanya adalah kontraktor function ini dan ini adalah obyeknya objek Eko dan ini objek Budi jadi tidak seperti ini lagi ya tidak seperti konsep Joko sama dengan nah tidak seperti kurung kurawal dua seperti ini tapi kita menggunakan kata kunci new diikuti dengan kontraktor functionnya diikuti dengan ini seperti memanggil function jadi ini adalah cara pembuatan objek Yadi javascript dari kontraktor function Halo Sekarang kita akan bahas tentang properti di kontraktor function sebenarnya salah kita membuat objek ya kita bisa dengan mudah menambahkan properti ke dalam objek tersebut hanya dengan menggunakan nama variabelnya diikuti dengan tanda titik dan nama propertinya Jadi mirip kaya objek biasa sebenarnya Yesa teman-teman sebelumnya sudah bikin sebuah objek Eko dan objek Budi dari kontraktor function person sebenarnya kalau teman-teman pengen menambahkan properti Ya silahkan tambahkan 6a obyeknya hanya Eko titik nama propertinya apa Jadi yang mirip seperti kita menggunakan objek biasanya namun Jika seperti itu alhasil konseptor ponselnya sudah kita buat itu tidak terlalu berguna Kenapa karena propertinya tidak ada di dalam sana Jadi kita tidak mendefinisikan propertinya disana ya Jadi untuk menambahkan properti dalam sebuah objek yang dibuat dari conservation kita bisa menggunakan kata kunci this di dalam konseptor function nah lalu diikuti dengan nama propertinya lalu ya tinggal diikuti dengan isi dari value propertinya kira-kira apa Seperti apa contohnya jadi seperti ini contohnya Jadi kalau teman-teman bikin function person tinggal kalau mau menambahkan properti ya sama tinggal gunakan this titik nama propertinya apa sama dengan value-nya apa cute disini kosong hadis detik losne misalnya sama dengan videonya kosong Jadi otomatis kalau teman-teman menambahkan dua properti ini maka Eko dan Budi Dia memiliki dua properti ini secara sekaligus ya jadi secara otomatis Nah makanya tadi saya bilang ini kita anggap sebagai cetakan jadi saat kita bikin Sebuah cetakan ketika kita bikin objek dari cetakan tersebut maka objek yang dibuat dari cetakan tersebut akan sama hasilnya jadi memiliki properti yang sama lem materi selanjutnya nanti kita akan bahas tentang method atau function yang sama juga Oke jadi seperti ini contohnya jadi eh di mana tadi kesini jadi disini teman-teman bisa tambahkan setelah teman-teman bisa langsung seperti ini sih kalau mau misalnya Eko titik Force name sama dengan Eko seperti ini bisa ya karena objek di javascript itu bebas teman-teman bisa langsung tambahkan cuma biar teman-teman bisa dapat semuanya jadi semua objek bisa dapat teman-teman saya tambahkan di dalam kontraktor function jadi contoh disini gunakan this titik Force 6 = Silahkan masukkan namanya contohnya kosong dulu ya di Static class name sama dengan nol dulu Nah kita akan coba ya gunakan konsol titik look Eko dan konsol titik love Budi kita akan coba ya kita akan lihat hasilnya saya inspect dulu Kita lihat di konsol Nah lihat nah ini objek person Ya ini yang versi On Eko kita lihat di dalamnya ada first name dan juga adalah 10 semuanya ya karena memang disini ketika awal kita bikin itu nilainya disini adalah kosong ini yang budiyah yang kedua Budi kita lihat nah ini juga kosong eh Oke kalau kita mencoba ubah contohnya yang Eko saya ubah Eko titik Force namanya sama dengan Eko seperti ini saya refresh Nah kita lihat hasilnya sekarang yang force namanya adalah Eko tapi yang last nya kosong ya jadi setelah pertama kali dibuat ya Ketika saya bikin new version lalukan saya bikin ini nah jadi present yang pertamanya itu kosong + named yang pertamanya itu kosong Selanjutnya disini saya ubah lagi Force namanya menjadi Eko jadi yang objek Eko ini sekarang port-nya adalah string Eko sedangkan yang Budi masih kosong eh masih kosong di sini oke saya ubah Budi titik Wars namanya Budi contohnya Budi titik kelas NEMnya misalnya Nugraha Hai yang ini Eko titik kelas NEMnya contohnya kanedi Oke seperti ini kisah hari flash Nasinya kalau teman-teman perhatikan sekarang sudah berubah semuanya yang Eko dan juga yang Budi jadi seperti ini kalau teman-teman mau menambahkan properti ya di dalam kontraktor function jadi tentang bisa gunakan bisa diikuti dengan nama propertinya apa lalu diikuti dengan value-nya kira-kira apa atuh kalau teman-teman tidak juga semuanya enggak masalah sih kalau teman-teman tidak seperti ini teman-teman bisa langsung seperti ini cuma biar konsisten aja ya biar semuanya punya propertinya semua obyeknya karena kalau teman-teman disini tidak ada contohnya ya Atau saya komen disini kita akan Komen dulu nah disini ini coba saya hapus gitu ya hapus ini saya komen lagi jadi yang Eko kita set Force namanya sedangkan yang beli tidak ada ya Nah kita Coba refresh atau non praktikan yang Eko default-nya karena disini kita tambahkan postname nah sedangkan yang Budi ini tidak memiliki properti apa-apa Kenapa karena memang tidak pernah kita tambahkan dan disinipun di kontraktor ponselnya kita tidak pernah mendeklarasikan properti apapun jadi seperti ini jadi kalau mau lebih konsisten Ya teman-teman silakan deklarasikan di dalam kontraktor function jadi ketika kita refresh Nah di sini udah otomatis ada nih first name last name dan disini juga ada postname walaupun isinya masih kosong jadi seperti ini tentang properti ya di dalam kontraktor function Sekarang kita akan bahas tentang method di kontraktor function nah sama seperti tipe data objek Biasanya kita juga bisa menambahkan method di dalam kontraktor function atau menambahkan function di dalam obyeknya jikalau kita metode konservasi on secara otomatis objek yang kita buat akan memiliki method tersebut jadi ini lebih mudah karena kita langsung bikin methodnya di dalam cetakannya ya di dalam kontraktor vaksinnya jadi secara otomatis objek yang dibuat dari cetakan tersebut atau cossack terpaksa tersebut secara otomatis dia akan memiliki method-method tersebut key Seperti apa caranya jadi seperti ini contohnya ya teman-teman bisa gunakan this titik nama propertinya kira-kira apa sama dengan function jadi ya mirip kayak kita bikin function di dalam tipe data objek seperti di Jawa skip dasar materinya ya Ya seperti yang mateja basah-basah sebelumnya sudah kita bahas jadi ya sama seperti itu Jadi tinggal this titik nama propertinya Nanti kira-kira dipanggil Seperti apa lalu disini adalah diset sebagai function tadi ada parameter Nah dengan seperti ini nanti objek yang kita buat dari siperson tersebut yaitu otomatis dia punya payment method namanya say hello kita akan coba implementasikan Jadi diversion disini kita akan tambahkan this titik c Hello Eh sama dengan function kira-kira tambahkan m Prof ininya parameternya lalu teman-teman di sini kita pakai nya konsol info saja ya konsol titik info Hello name terus My name is my name is this kita akses yang first namanya ini cuma sampai persen saja ya oke enggak apa-apa sampai Persema aja seperti ini jadi simpel ya Nah otomatis apa kalau kita sudah tambahkan say Hello disini maka yang Eko karena kita buat dari new person dan Budi kita buat dari new fashion secara otomatis dia memiliki methods Eh elo sekarang jadi saya bisa Eko titik c Hello Nah lihat ya sudah ada contohnya Joko seperti ini ini juga bisa Budi titik c Hello Joko nah seperti ini bayangkan kita sekarang jadi otomatis nih punya Eh punya properti bayangkan kalau teman-teman bikinnya pakai objek yang kurung kurawal itu enggak bisa teman-teman harus definisikan ditiap obyeknya di ekor didefinisikan sehelai nya di Budi juga harus didefinisikan sehelai nya Nah tapi dengan menggunakan kontaktor pasien ini teman-teman tidak perlu melakukan hal tersebut Jadi cukup bikin converter functionnya disini metode kira-kira apa secara otomatis obyeknya punya Hello Dan ini juga punya sih Hello kita akan coba saya refresh nah hasilnya lihat di sini ada Hello Joko My name is Eko ya Yang ini dan disini Hello jokomie name is Budi ya di sini jadi seperti ini kalau teman-teman mau menambah payment method dia aja temen-temen silahkan tambahkan sebanyak-banyaknya seperti bikin method function Biasanya tinggal this file-nya bla bla bla = function silahkan mau masukkan param oval second gitu ya mau nambahkan return juga boleh bebas Jadi mirip kayak bikin bangsen Biasanya jadi ini adalah metode di kontraktor function Sekarang kita akan bahas tentang parameter di kontraktor function karena dalam javascript itu kelas dalam bentuknya adalah function jadi secara default pancen tersebut bisa memiliki parameter ya sebenarnya nah terjadi konsep terpaksa itu sama seperti pasien biasanya bisa memiliki parameter hal ini membuat ketiak kita bikin sebuah objek kita bisa mengirim langsung datanya lewat parameter di kontraktor function tersebut Jadi maksudnya apa sih Jadi maksudnya adalah a Hai ini kan yang percaya itu sebabnya dia ya pangsun biasa ya Nah walaupun kita bilang ini adalah konseptor pancen tapi sebenarnya dia adalah function biasa gitu ya Nah Lantas apa artinya kita bisa menambahkan parameter disini kalau teman-teman mau jadi kalau teman-teman mau semuanya kita bisa tambahkan parameter di sini ya jadinya disini parameter firstname disini parameter lastname lalu nah disini kita bisa langsung tangkap nih ya this titik freestyle saya ambil dari parameter for steam Anda di sini ya di sini klasnem saya ambil dari parameter lastname disini nah dengan seperti ini nanti ketika teman-teman membuat objek person teman-teman perlu mengirimkan data di parameternya ya entah itu forceum dan juga lastname Edi lebih simpel lagi nanti pembuatan obyeknya jadi Oke kita lihat ke kode jadi disini kan kita ngerubah dataverse macemnya disini ya Nah teman-teman semuanya bisa dipermudah dengan cara tambahkan parameter aja nih di konser punk Saint ini tradisi tambahkan Force name habis itu lastname bisa tambahkan dua parameter selanjutnya saya akan ubah yang persennya itu saya ambil dari parameter present saja dan ini dari parameter lastname nah seperti itu Ya nantinya kalau teman-teman bikinnya seperti ini batikan isi default-nya kan kalau dia pasti Memang sebelumnya kan opsional ya parameter itu Nah kalau misalnya teman-teman tidak sih kan jadinya jatuhnya and Divine Nah kita berteman juga bisa langsung isi kantongnya disini kita akan isi langsung nih parameter persnelingnya kira-kira disini Eko dan disinilah stemi adalah kanedi artinya Apa artinya kita tidak perlu rubah lagi secara manual seperti ini Jadi ini bisa saya hapus ya Nah seperti ini jadi bayangkan lebih simpel sekali jadinya juga bisa saya hapus Eh jadi tinggal di sini Budi Nugraha nah yeah jadi seperti ini ini kalau saya refresh nah hasilnya sama tidak ada bedanya yang membedakan adalah sekarang saya punya parameter di dalam kontraktor function jadi seperti ini kalau teman-teman mau istilahnya tuh ketika kita membuat sebuah objek dari sebuah kontraktor function nah teman-teman mau ngirim data ya Nah itu kita bisa kirimkan di parameter ini jadi ini lebih simpel sekali ya dibanding teman-teman ngeset 11 propertinya teman-teman mendingan kirimkan saja iya parameter di kontraktor function Sekarang kita akan bahas tentang kontraktor inheritance dalam kontraktor kita biasanya membuat properti baik itu berisi value ataupun fashion Ya seperti yang sebelumnya sudah kita bahas dalam kontraktor kita bisa memanggil kontraktor lain kalau teman-teman mau sebenarnya nah Dengan begitu kita bisa mewarisi semua properti yang dibuat di kontraktor lain tersebut dicat teman-teman punya dua kontak terlalu dari pesantren pertama teman-teman manggil konseptor yang kedua Nah itu boleh nantinya Apa artinya semua inisialisasi yang dilakukan di konseptor yang kedua tersebut akan dicopy ya ke si kontraktor yang pertama nah gimana caranya untuk memanggil kontraktor yang lain Jadi sebenarnya kelihatannya kayak pewarisan tapi sebenarnya ini bukan sih ini lebih ke kopi apa yang dilakuin sama kontraktor yang lainnya gitu ya Nah untuk memanggil kontraktor lain kita bisa menggunakannya namanya nama kontraktornya kira-kira apa titik call ya halo disini pake this ya untuk mengatakan bahwa saya akan membawa objek yang saat ini saya gunakan kalau disini parameternya kira-kira jadiin ikutin parameter ininya parameter kontraktor selanjutnya itu kira-kira apa aja Nah ini teman-teman bisa lebih dari satu ya parameternya tinggal disesuaikan saja hai oke Contohnya kayak gini jadi misalnya teman-teman punya sebuah kontraktor function yang namanya employee disini punya firstname ya di sini punya Force name first name say hello seperti yang version yah ini rasanya teman-teman bikin reconstruction yang namanya Manager nah bedanya disini misalnya Manager dia punya lastname Nah kalau teman-teman pengen manggil isi semua ini Ya semua yang ada di kontraktor vaksinnya employee teman-teman saya gunakan employed titik call lalu Pak Edition parameter pertamanya lalu koma lalu di sini kayaknya parameter sesuai dengan yang di sini di sini kan cuma butuh satu parameter itu Manteman disini silahkan kirimkan satu parameter saja kau disini butuh dua ya teman-teman juga kirimkan disini dua parameter jadi seperti itu Oke kita akan coba ya kita akan coba saya akan bikin file baru di sini nama file-nya adalah kontraktor inheritance of Hai Oke jadi kita bikin of function employee disini dia punya port ya lalu kita punya function Manager tadi dia punya persneling dan juga lastname seperti ini oke nah misal teman-teman pengen nge copy semua yang ada di sini di blog function employee ya ke dalam Manager itu teman-teman tidak perlu copyface kesini kenapa karena kolkolkol copyface kesini teman-teman tidak merubah employee teman-teman harus rubah lagi di sini katanya kalau di sini misalnya punya this titik first name = first name itu ya this titik say hello = function name contohnya konsol titik info hello NEM My name is the Shining Force nah seperti ini Nah kalau teman-teman pengen copy semua data ini enggak perlu kopi paste sini ya nggak perlu seperti ini enggak habis itu teman-teman disini saya tambahkan eh this titik lastname = last name Nah itu nggak perlu nggak perlu teman-teman copyface ini seperti ini ya kenapa nggak perlu karena kalau teman-teman copy-paste mantap teman-teman disini ngelakuin perubahan ya teman-teman harus ikut ngelakuin perubahan juga disini jadi biar lebih aman tetap bisa menggunakan kontraktor inheritance ini sebenarnya kelihatannya kayak inheritance pewarisan mewarisi semua yang dimiliki konseptor yang lain tapi semuanya bukan sini lebih ke kopi apa yang di lakukan sama kontraktor lain Jadi ini teman-teman bisa ganti ya caranya cukup manggil employee ya titik call eh lalu kita Aa fbhj nya mana kita gunakan this ya karena kita mau copy ke yang saat ini obyeknya lalu koma kira-kira parameternya apa Nah disini teman-teman perlu perhatikan disini Butuh berapa parameter disini kan cuma satu ya namanya adalah first name Oke kita gadis ini kita akan kirim ya udah kirim posternya aja yang dari sini ya Ya di sini kita kirimkan lagi ke si employee ini nah seperti ini Kayaknya jadi kalau teman-teman nanti bikin konsep misalnya Eko = new Manager nyatanya disini Eko khannedy kita akan coba info Eko seperti ini kita lihat kita buka hasilnya Nah Lihat manager ya Sayang kalau teman-teman perhatikan disini punya first name punya last name dan punya seh elo Eh jadi Abang Sensei Hello Eh walaupun di sini kita tidak pernah mendeklarasikan Force name ya tidak pernah mendeklarasikan say hello ya tapi karena disini kita Panggil employee call seperti ini maka yang ini otomatis dipanggil dan desain ke Objek this Jadi kalau teman-teman tidak mau manggil ini contohnya ya saya komen kita refresh dia cuma punya lastname saja ada di sini kita cuma set lastname tapi kalau kita Panggil yang ini Maka kalau kita refresh nah dia punya semuanya first name last name dan say hello jadi seperti ini kontraktor inheritance ya telah atau istilahnya ternama copy kode yang ada di kontraktor lain ke kontraktor yang kita mau jadi seperti ini caranya kalau di javascript kontraktor function Sekarang kita akan bahas tentang five javascript itu sebelumnya dikenal dengan bahasa pemograman yang berbasis prototipe Memang agak sedikit membingungkan biasanya untuk pertama kali belajar tentang Prototype ini kalau teman-teman nanti bingung ya di tengah jalan teman-teman saya diulang-ulang materi tentang Prototype ini dan tidak dipungkiri juga banyak sekali yang sangat bingung ya ketika pertama kali memang belajar konsep Prototype di javascript pada chapter ini kita akan bahas tentang detail konsep potret itu seperti apa Oke jadi Prototype itu erat kaitannya dengan inheritance atau pewarisan saat kita membuat objek dari sebuah kontraktor function objek tersebut disebut Instance jadi namanya adalah Instance objek semua properti Ya baik itu value atau juga bentuknya metode itu akan berada di dalam instan obyeknya sebenarnya jadi bukan berada di dalam kontraktor vaksinnya tapi berada di dalam Instance obyeknya ya setiap kita membuat sebuah kontraktor function maka secara otomatis sebenarnya akan dibuatkan sebuah prototype Oh ya misal tidak kita membuat kontraktor function yang bernama person maka sebenarnya akan dibuatkan versi On Prototype jadi ini secara otomatis saat teman-teman bikin sebuah converter function selalu akan dibuatkan prototypenya asal kita membuat sebuah object Instance secara otomatis objek tersebut adalah turunan dari Prototype nya ya Jadi kalau kontraktornya adalah namanya version batin version Prototype jadi dia turunan dari itu untuk mengakses foto tab ya dari sebuah Instance yang sudah kita buat kita bisa menggunakan underscore underscore proto eh cara mengaksesnya jadi seperti apa contohnya Coba kita akan coba buat ya dua buah object Instance namanya Eko dan juga Budi lalu kita print-out dikontrol Oke kita akan coba ini biar cepet saya akan copyface yang objek jadi di sini kita buat Prototype Oke sudah ini kita and title nya Prototype ini kita hapus oke selesai ya kita akan coba lihat hasilnya Hei kalau teman-teman perhatikan disini hasilnya sama ya di sini Eko dan disini adalah Budi Jadi sebenarnya properti yang kita buat di sini ya di sport name This last name bisa Hello sebanyak dia akan menjadi bagian dari sini dari Instance obyeknya jadi nempelnya disini first name last name Hello nempelnya di Eko dan juga nempelnya di Budi ya Jadi ya mirip kayak kita bikin objek biasa sebenarnya Cuma dipermudah menggunakan kontraktor function key jadi seperti ini ya hasilnya Nah mungkin di sini ada pertanyaan ini apa nih underscore underscore Proto gitu ya kita akan bahas terlihat jadi saat teman-teman bikin sebuah object Instance ya kita bilang yang Eko dan Budi Itu adalah namanya object Instance dari sebuah kontraktor function maka secara otomatis itu dia akan menjadi turunan dari Prototype si kontraktor pensiunnya Sebelumnya kan kita bikinnya dari pearson ya jadi secara otomatis Sebenarnya dia pasti bakal membuatkan yang namanya person titik Prototype jadi itu adalah Prototype dari si persennya dan saat teman-teman perhatikan ada ini ya di sini ada under score underscore kroto Sebenarnya dia mengacu ke ini ke prototypenya jadi ini kayak pewarisan itu yang mewarisi apa yang dimiliki sama prototypenya dimiliki sama si object Instance Budi dan Eko jadi mirip seperti itu jadi ketika Eko disini ini ada fortnite Hello gitu ya di sini ada proto foto ini mengacu ke prototypenya nah dimana produk ini juga dia memiliki proto dimana mengacu ke foto tapi yang lainnya dan seterusnya sampai yang paling ujung itu adalah Prototype objek jadi ada objek Prototype ya Jadi kalau misalnya kita perhatikan disini ini ada proto ya Nah ini adalah prototip dari siperson yah lalu di dalam di sini juga ada Protol lagi ya Ini adalah Prototype dari si objek dan disini kalau teman-teman perhatikan ada banyak sekali ya method-method yang ada di dalam Prototype objek sedangkan kalau di Prototype person disini tidak ada karena Emang kita secara default saat teman-teman bikin sebuah kontraktor function akan dibuatkan prototype yang isinya masih kosong itu ya jadi seperti itu konsep Prototype di Kepa script setiap kita bikin Yes objek dia sebenarnya ada prototypenya ya di atasnya Dan ini juga ada foto Tabnya nah ingat ya Prototype ini yang version ini dan ini ini adalah foto tab yang sama jadi biar diagram ini memang ngajunya ke prototype yang sama jadi enggak berbeda jadi dia sama jadi ketika kita melakukan perubahan nanti di protap ini maka yang Eko dan Budi juga akan mendapatkan perubahannya Eh jadinya seperti ini ya jadi di atas objek yang Senada Prototype dan di atasnya juga ada foto tab lagi Oke gimana sekarang kalau kita pengin menambah properti ke dalam Prototype Jadi sebenarnya Prototype itu mirip seperti objek biasanya ya tipe data objek Dimana kita bisa menambahkan properti baik itu value atau juga metode walaupun sebenarnya kebanyakan Biasanya kita akan menambahkan method ke dalam foto tab itu ya asal kita menambahkan sebuah properti ke dalam Prototype secara otomatis semua object Instance itu akan dan turunannya ya dari partai tersebut akan memiliki properti tersebut jadi secara otomatis ya Jadi kalau misalnya kalau misalnya kita cuma menambahkan kedalam object Instance Eko saya disini saya by gitu ya Nah itu sebenarnya kita cuma mengubah si objek Eko objek Budi itu tidak akan berubah jadi kalau teman-teman Coba ya kita akan coba misalnya Eko titik c bye gitu ya sama dengan function konsol info Goodbye seperti ini ya ini kita refresh nah hasilnya lihat di sini kita ada sheebaya yang Eko tapi kau tempat ikan di Budi ini tidak ada kenapa karena kita memodifikasi Instance obyeknya Eko kecuali teman-teman tambahkan dalam kontraktor function otomatis dua-duanya dapat ya tapi kalau teman-teman tambahkan di sini dia cuma dapat si Instance obyeknya saja yang lain tidak akan dapat kayak gimana Kalau saya kita pengen semuanya itu dapat gitu ya Cara yang paling gampang itu yang kita tambahkan di sini tapi semuanya Ada cara lain caranya menggunakan Prototype jadi Hai teman-teman Bisa tambahkan di Prototype ya kalau ini kan langsung di obyeknya Kalau yang ini kita tambahkan difoto Tabnya caranya adalah kita ketikkan disini nama konseptor functionnya titik Prototype titik properti yang tanggal tambahkan ini isinya jadi sini saya menambahkan properti seibai disini adalah sebuah function lalu kita juga bisa Tambahkan lagi ya bisa lebih dari satu pelet santet disini Run = disini functionnya jadi seperti itu Jadi ini boleh eh kita akan coba ini saya akan hapus ya Oke saya akan coba di sini tinggal version Prototype Titing Say bye gitu ya function konsol info Goodbye lalu kita Tambahkan lagi Prototype Ran function contohnya konsol info ini saya pakai ambil this titik first name ya habis itu kita bisa mengakses disk Yadi satunya nanti siapa yang mengakses Lan ini ini obyeknya kita ngambil this titik first name is running seperti ini kita refresh nah selesai jadi kau teman-teman Oke ini tidak ada Yes besoknya Oke jadi kalau teman-teman replace eh hasilnya kita cek harusnya adaran dan juga say goodbye sekarang kita cek di sini tidak ada ya kita cek di sini ini juga enggak ada nah kenapa enggak ada karena yang kita tambahkan itu sebenarnya saya Hello sorry say dan juga Ran itu bukan ke dalam obyeknya kalau disini ini otomatis ke dalam intense obyeknya tapi kalau difoto Tab itu kita menambahkan ke dalam prototypenya Jadi kalau temen-temen lihat bukan disini ini tidak akan ada ya tapi teman-teman lihat di prototypenya Disini di proto Nah lihat di sini ada Ran dan di sini ada Say Bye dimana disini adalah Say Bye dan di sini ada orang nah gimana dengan yang Budi ini juga sama kita buka prototypenya dan di sini ada Ran dan juga ada Say Bye jadi seperti itu jadi salah kita menambahkan ke dalam foto tab jadi semuanya dia nambah ke Prototype bukan nambah ke Instance obyeknya eh Nah sekarang pertanyaannya Gimana caranya kalau saya pengen maaf sasran dan juga Say Bye ya Oke kita cek Hah Jadi ya bagaimana cara kerja foto tapi inheritance jadi bagaimana misalnya bisa properti di foto tab bisa kita akses dari sebuah Instance objek jadi ketika kita Mas seperti di dalam Instance objek pertama akan dicek dulu apakah propertinya ahli dalam instan objek tersebut atau tidak ya kalau misalnya tidak ada ya maka akan dicek ke prototypenya ya jadi di cek nih jadi kalau saya manggil say di Eko misalnya ya dicek dulu dia Koto ada Say tidak gitu ya Nah kan tidak ada yah karena kita tidak pernah menambahkan say di Eko Nah akhirnya ketika tidak ada dia akan naik ke atasnya naik ke prototypenya jadi masuk ke Prototype person titik Prototype ya setelah itu dicek di sana ada Say Bye atau tidak ketika Disana tidak ada misalnya ya tidak ada juga dia akan naik lagi ke photoshop yang diatasnya yaitu Prototype objek ketika dicek tidak ada yang baru terjadi error ya jadi seperti itu kalau ada yang berarti diambil dari yang obyeknya jadi cara kerjanya kurang lebih seperti itu jadi saat kita manggil Say Bye contohnya pertama DC Neko di sini ada tidak Katakan Tidak ada ya ketika tidak ada Saya akan naik ke potonya ketika di perutnya di sini ada Say Bye maka saya akan akses yang saydi protonnya ketika misalnya disini tidak ada juga saya akan naik ke kroto yang diatasnya yaitu proto yang objek jadi seperti itu cara kerja protap inhabitants lah gimana kalau di Eko Saya punya saya by juga Makanya akan diakses adalah yang say di Eko yang diprotect Walaupun ada juga tidak akan diakses karena Siapa yang paling dulu itu ya paling awal ya objek insetnya dicek Kalau tidak ada baru naik ke fotonya jadi seperti itu Jadi kalau di sini eh walaupun kita definisikan di dalam prototypenya ya kalau teman-teman coba misalnya Eko titik Say Bye ya sama Eko titik Run ya kalau kita refresh nah sini ada Good Bye dan juga Eko is running jadi walaupun di ini tidak ada tapi dia akan naik ke fotonya eh ke prototypenya dan disini baru ada prototypenya nah gimana kalau temen-temen disini mendefinisikan ulang eh contohnya Eko titik c b = function konsol titik info sampai jumpa misalnya pakai bahasa Indonesia apa yang terjadi kalau kita refresh yang keluarnya disini adalah sampai jumpa Kenapa keluarnya sampai jumpa karena pertama kali ya dicek nya adalah instan sini ya jadi ketika saya panggil say bayinya milik he dari instansinya Eko jadi yang pertama kali dicek adalah Apakah ada Seba di dalam insya Eko disini Gimana Di sini ada nih kalau disini sudah ada ya saya tidak akan naik lagi ke prototypenya kecuali di sini tidak ada saya baru naik ke prototypenya jadi walaupun default-nya di sini ada Say Bye yang dipanggil adalah yang pertama dulu disini yaitu Instance of nih jadi seperti itu ya cara kerja Prototype inheritance jadi ini adalah sebenarnya konsep javascript aslinya jadi walaupun object-oriented sebenarnya implementasinya itu dia menggunakan Prototype ya Jadi ini Memang agak sedikit beda dibanding bahasa pemograman yang lain kalau untuk di javascript Sekarang kita akan bahas tentang Prototype inheritance sekarang kita sudah tau ya bahwa Prototype itu selalu memiliki parent artinya dia adalah turunan Feren tertingginya sudah pasti adalah objek Prototype nah pertanyaannya sekarang bagaimana jikalau kita ingin melakukan inheritance ke Prototype lain yang bukan objek contohnya walaupun ujung-ujungnya pasti ke objek itu ya Nah hal ini bisa dilakukan namun agak sedikit tricky Sebenarnya ya Nah karena hal ini sebenarnya untuk javascript modern tidak direkomendasikan lagi melakukan praktek object Grammy menggunakan Prototype karena di ecmascript versi 6 itu sudah dikenalkan kata kunci baru namanya adalah class ya nanti kita akan bahas dicatat sendiri nah sekarang saya sengaja basbak Prototype Kenapa karena biar teman-teman ngerti sebenarnya implementasi kelas di dalam javascript itu sebenarnya ya ujung-ujungnya adalah berupa Prototype Oke kita akan coba Jadi ini adalah contoh pewarisan ya implementasi inheritance yang salah ya kenapa Salah Oke kita akan coba ya kita akan bikin dulu yang pertama employee dan juga Manager lalu teman-teman saya pengen Oke saya pengen SIM Manager ini adalah turunan dari employee jadi saya pengen mengoleskan kesini Nah kita bisa ngelakuin kayak gini Manager titik Prototype = employee titik Prototype jadi kita anggap ini biar turunan dari ini lalu kita tambahkan Manager Pro Tabs Hello lalu manajemen proyek pada tab say hello Jadi kalau misalnya Manager Hello nya Pak manajer ya kalau misalnya employee Hello nya pakai employee nah ini kenapa salah ya nanti kita akan perhatikan silakan coba praktekkan dulu jadi saya akan buat disini nama file-nya adalah Prototype inheritance Oke jadi disini kita buat dulu nama panggung Sion kontraktornya disini employee disini punya named Yadis name = m lalu di sini kita punya manajer Oke selanjutnya misalnya kita pengen Manager ini foto Tabnya adalah turunan dari employee Oke kita bisa ngelakuin kayak gini nih Manager titik Prototype = employee titik Prototype 2 nah misal kita lakukan seperti ini ya Setelah selesai Sekarang kita tambahkan Manager contohnya kita samakan aja ya Manager protes Hello employee tetap sehelai jadi manajer Prototype kece Hello = function NEMnya karya disini Hello name is Manager of Hello name My name is Manager this titik name key seperti ini ya kita akan copyface jadi yang ini baru sekarang employee contohnya ya saya Hello Kini kita ganti employee Oke selesai seperti ini Oke selanjutnya Kenapa ini dibilang pewarisan prototype yang salah nanti kita lihat kita perhatikan disini ada celah tohnya harusnya Nah kita akan bikin Kyle habis itu Manager Anda kita sehelai Joko helm Manager eh sore-sore Joko lagi ya jadi Harusnya kan yang ini say hello ini ya Hello Joko My name is employed Budi dan disini harusnya Hello Joko My name is Manager Eko Oke kita akan coba perhatikan Apa hasilnya jadi konstan employee = new employee Budi contohnya ya employee say hello misalnya Joko oke yang ini kita ganti manajer ini manajer kita perhatikan kita cek ya hasilnya seperti apa Nah ini keluar dua seperti ini dua kali Eh katanya ada tanda2 batti2 kali nilainya sama kita ganti nih Eko ya Sorry dari press nah saya gini Hello Joko My name is employed Budi Hello Joko My name is employee kowe Bentar ini kok jadi employee lagi ya tradisi kita udah pakai Manager nih Harusnya kan ketika hero dia manggil Yang Manager Prototype Tapi kalau ini yang employee harusnya dia manggil ini udah bener sih kalau ini Ya keluarnya eh My name is employed Budi tapi kenapa Disini yang keluarnya adalah employee Eko Harusnya kan Manager Eko Nah apa yang salah yang salah semuanya disini kerja kita bikin pewarisan Prototype seperti ini Jadi ini sebenarnya cara yang salah nah kenapa ini kita bilang salah Oke kita lihat nah disini saya sudah Gambarkan diagramnya jadi saat teman-teman melakukan Manager prototipe = employee Prototype jadi yang teman-teman Lakukan semuanya ngelakuin seperti ini jadi yang tadinya Eko ya Eko dia itu prototypenya adalah ke Solo ini kebalik ya ini Woody ini Eko tapi enggak masalah contohnya yang objek yang ah dia bikin employee totep gitu ya nah habis itu dia akan punya fotonya Fotonya adalah objek benar Nah kalo yang ini kita di sini kita bikin dari manajer tapi manager.co.th teman-teman SN = employee Prototype jadi seakan-akan ininya tidak ada ini dirubah langsung jadi dari Budi yang langsung kesini ini langsung kesini nih Padahal harapan kita itu semuanya bukan ini sama dengan ini tapi proto yang di bawah sini ini mengacu ke sini Jadi ini pewarisan yang salah kalau teman-teman informasikan seperti kode ini Jadi ini itu salah ya kenapa Karena teman-teman seakan-akan ngereplace yang Manager Prototype diubah menjadi employee totep maka dari itu karena Manager foto tab kita Ubah menjadi employee Prototype nah Disini yang harusnya keluarnya Manager Eko keluarnya ada proyek Oh kenapa karena Manager Prototype kita replash bulat-bulat sama employee Prototype Edi Ini masalahnya begitupun kalau kebalikannya kau teman-teman coba balikan misalnya employee Prototype sama dengan manajer Prototype ya kalau kita replace nah hasilnya nonton perhatikan ini enggak ngefek sama sekali ya Jadi dua-duanya hal yang sama Kenapa dua-duanya hal yang sama Nah kenapa tidak jadi manajer Budi Ini Manager Budi karena saat teman-teman ngeset Manager Prototype itu seakan-akan dua-duanya berubah udah sini teman-teman gunakan lagi Manager Prototype srm repot otep ini juga dua-duanya akan berubah maka dari itu disini yang menang ya Jadi yang paling bawah itu menang jadi kau teman-teman disini posisinya yang paling atas mungkin ya Nah ini keluarin jadi manajer semua Nah lihat manajer-manajer tapi intinya ya salah b iya Hai teman-teman definisikan hal yang salah kau teman-teman melakukan seperti ini jadi jangan melakukan pewarisan seperti ini kalau ini beneran si prototypenya direplace datanya bulat-bulat sama yang employee Prototype seperti ini lantas gimana Yang benar ya untuk ngelakuin pewarisan Jadi bukan seperti ini ya jadi harapannya itu bukan dari Budi ke Manager Abdi itu di flash menjadi employee bukan seperti itu harapannya adalah disini proto nya itu mengacu ke employee gimana caranya biar benar warisan di prototypenya itu kita bisa gunakan seperti ini jadi manajer titik Prototype sama dengan objek kriyet employee Prototype di kita bikin objek baru ya dimana protonnya kita set si employee Prototype jadi seperti ini kalau teman-teman pengen ngelakuin pewarisan di Prototype eh maka dari itu semuanya enggak direkomendasikan teman-teman bikin Hai pewarisannya object-oriented programming menggunakan Photoshop karena agak sedikit membingungkan rancu sekali menggunakan foto tapi ini kita akan sekarang perbaiki jadi ini cara salah ya saya Comment di sini salah cara yang benar itu Manajer titik Prototype itu kita buat dari objek titik riet Ya Kita buat yang dimana prototypenya adalah employee Prototype nah seperti ini ini baru benar ya kalau teman-teman Coba refresh Nah lihat hasilnya sekarang ini keluar Hello Joko My name is employee Budi dan disini Hello Joko My name is Manager Eko sudah benar Oke kita akan coba lihat apakah benar sudah pewarisannya info employee dan info manager Oke kita refresh lagi kita lihat di sini yang employee employee Itu punyanya named doang DC prototypenya foto Tabnya adalah employee sudah benar berarti ya di atasnya ada prototypenya adalah objek peti udah bener nah gimana dengan manajer-manajer potongan perhatikan disini NEMnya adalah Eko Desa ada proto ya prototypenya peletnya adalah employee ya tapi book disini Sebenarnya bukan sih bukan employee jadi disini itu nah ini handphonenya disini ini sebenarnya ini Manager Kenapa kita disini berubah jadi employee karena disini kita bikin Ulang nih objek riet eh jadi Emang disini Agan milih membingungkan sebenarnya Tapi ini sebenarnya bukan employing Ini tuh sebenarnya ini objek riet employee dimana di atasnya baru ada yang employee baru di atasnya lagi ada objek eh Nah jadi beda-beda tingkat ya kalau dari sini employee langsung ke employee Prototype Kalau ini Enggak dari manajer ke ini hasil ini Manager process ini kreatif dari objek riet dan di atasnya baru ada Prototype employee disini punya Hello Desa juga punya Hello disini saya Hello yang Manager disini saya Hello yang employee jadi ketika kita mengakses ya kita dapatnya yang dari manajer ini makanya di sini keluarnya adalah sih Manager Eko jadi seperti ini ya Prototype Inheritors di javascript jadi yang seperti ini bermental Sinyalnya udah bener dan hasilnya jadinya saat kita bikin yang pewarisan tadi itu jadinya seperti ini jadi kita bikin kita bikin ya ini Manager Prototype dan Disini protonnya yang mengacu ke sini Jadi bukan dari Manajer produk nya kita refresh lagi sunke employee pada teh bukan tapi protonnya yang mengakses ke sini Jadi ini adalah inheritance prototype yang benar jadi menggunakan objek titik 30 Halo Sekarang kita akan belajar kata kunci class sejak x-max versi 6 diperkenalkan kata kunci baru namanya adalah class ini merupakan kata kunci yang digunakan untuk membuat class di Java script Jadi sebelumnya kan kita pakai kontraktor function yaitu javascript versi lama Sebenarnya dia pasti pasti baru itu untuk pembuatan kelasnya menggunakan kata kunci kelas dengan menggunakan kata kunci kelas kita tidak pula game menggunakan kontraktor function Jadi kau terpaksa itu digunakan untuk javascript versi lama atau tradisional gitu ya yang untuk versi modernnya kita menggunakan kata kunci class jadi seperti ini cara pembuatan kelasnya Jadi sebelumnya Kan Biasanya kita bikin function pearson gitu ya Nah kalau ini enggak kita bikin class lalu disini nama kelasnya apa terlihat version Halo kurung kurawal buka kurung kurawal tutup Jadi bukan lagi bikin pancen tapi kita bikin langsung kelasnya nah gimana cara pembuatan intense obyeknya sama kayak konseptor pancen jadi kita di sini kita bikin konten yang kau sama dengan new version Jadi mirip sama ya Enggak ada bedanya dengan pembuatan kontraktor function cara membuat obyeknya Oke kita akan coba saya akan buat disini nama file-nya adalah flash jadi kita cukup bikin class namanya adalah person Contohnya seperti ini tapi bedanya disini kita langsung kurung kurawal ya Jadi tidak ada yang kurung buka kurung tutup ini enggak ada pembuatan class itu beda dengan pembuatan pangkon Oke jadi seperti ini setelah selesai ya teman-teman kalau mau bikin objek ya dari kelas persen tersebut teman-teman bisa gunakan lamanya contohnya Eko = new version seperti ini lalu kita akan konsol titik info Eko eh kita perhatikan kita lihat hasilnya nasinya dia person Dia tidak punya properti apa-apa dan di sini ada protonnya juga ada Prototype jadi sama foto Tabnya itu ya dia adalah version ya dari class person Edy sama saja saat teman-teman bikin sebuah class jadi semuanya dia juga tetap punya namanya person Prototype seperti ini katanya kalau saya tambahkan Prototype titik say hello = function ini simpel aja ya function seperti ini misteri fresh kita lihat nah dia ada proto dan di sini ada sih Hello It's me tidak ada bedanya Ya implementasinya aslinya jadi cuma kata kuncinya aja baru kata kunci kelas tapi informasinya tetap dia mirip kayak kontraktor function dan dia juga berbasis prototec maka dari itu dari awal kenapa saya ajarkan foto tab dia teman-teman ngerti sebenarnya di belakang object-oriented programming nya javascript Sebenarnya dia masih tetap konsepnya adalah prototype Halo Sekarang kita akan bahas tentang kontraktor di kelas karena bentuk konservasi itu mirip dengan passion jadi kita bisa menambahkan parameter ya pada coaster pancen lantas pertanyaannya Gimana kalau dengan class karena kalau dikatakan kita tidak bisa menambahkan kurung buka kurung tutup itu ya jadi karena beda banget dengan passion nah di kelas juga kita bisa menambahkan kontraktor function Kalau mau ya dimana Dengan menggunakan kontraktor kita bisa menambahkan parameter saat pertama kali kita membuat obyeknya Jadi mirip kayak kontraktor function Nah untuk membuat kontraktor dalam kelas kita bisa menggunakan kata kunci namanya kontraktor seperti itu jadi ini lebih ini ya lebih enak lah dibacanya Karena sudah jelas namanya adalah kontraktor Oke jadi Seperti apa caranya seperti ini jadi teman-teman di dalam kurung kurawal buka kurung kurawal tutup di dalam sini teman-teman bisa menambahkan yang namanya kontraktor Hello disini parameternya apa lalu di dalamnya tinggal selam masukkan Jom kurawal buka kontrol tutup ini adalah kode yang teman-teman silakan masukkan mau ngelakuin apapun disini silahkan ya di dalam kontraktor ini dan di sini ada parameternya saat teman-teman tambahkan parameter disini maka otomatis saat teman-teman bikin object dari class person ini ternyata bisa menambahkan parameter juga jadi parameter ini nanti akan dikirim ke kontraktor yang ini eh Oke kita akan coba Jadi Disini saya akan bikin file baru namanya class kontraktor oke tak buat jadi di sini kita cukup bikin kelas version seperti ini teman-teman bikin kontraktor serta Saya butuh Nem Ya seperti ini lalu disini Silahkan teman-teman masukkan kode apapun Ya apapun contohnya saya akan konsol info membuat version Hai name contoh ya contoh saja kita bikin conseco = new version Eko contohnya konsol info Eko Oke kita akan coba kita lihat hasilnya Nah Lihat membuat person Eko jadi saat saya masukkan Eko ya di sini Eko ini parameternya dikirim ke contractors ini Jadi kalau teman-teman mau bikin mirip kayak kebangsaan kontraktor ya dimana teman-teman Mau menambahkan parameter ketika pembuatan objek di awalnya itu simpel teman-teman tinggal gunakan seperti itu Jadi ini juga bisa seperti ini nah ini membuat teks nekoya keluar waktu ini dipanggil kontraktornya Halo Di sini teman-teman juga aslinya persen Cuma di sini kita belum menambahkan properti ya tadi kita bahas You chapter selanjutnya Jadi kau teman-teman bikin juga bikin yang lain contohnya bikin Budi Ayo kita refresh nasinya lihat di sini membuat fashion Eko dan disini membuat person Budi jadi ini otomatis dia manggil sih kontraktor yang ini jadi ini adalah kontraktor di kelas javascript Sekarang kita akan bahas tentang properti di kelas sama seperti di kontraktor function dalam kelas pun kita bisa menambahkan properti Ya karena memang hasil akhirnya ujungnya seperti kayak kontraktor function jadi enggak ada bedanya walaupun kita menggunakan kata kunci class karena hasil aslinya adalah sebuah objek jadi menambahkan properti di kelas kita bisa menggunakan intensnya kalau kita mau tapi kalau saya teman-teman pengen langsung di dalam konsernya juga bisa ya Jadi boleh Oke Contohnya seperti ini kalo temen-temen pengen langsung bikin propertinya di dalam konsernya di tempat Gendis titik name contohnya sama dengan NEM seperti ini ini dari parameter yang di konser ini ya Jadi otomatis kita punya Eko titik name kalau saat bikin obyeknya kita akan coba kita lihat hasilnya kita akan chopass dari copy paste ya dari kelas kontraktor saya ganti jadi Prof properti kayak jadi disini Saya cukup menggunakan this titik name = n d seperti ini kau temen-temen mau tanpa di dalam kelas ini ya Bisa aja disini hanya Eko titik name = apa gitu ya Eko ini boleh tapi kalau mau di dalam kontraktor mirip kayak function kontraktor sebelumnya ya seperti yang di objects ini tak seperti ini first name last name seperti ini ya ini juga bisa teman-teman lakukan di dalam kontraktor seperti ini Ini hasilnya juga ada Eko dan Eko titik name Hai nah seperti ini ya kita akan coba lihat hasilnya nasinya keluar ya Eko ya dari Eko titik name ini lalu disini juga version kita lihat yang objek Eko isinya apa dan disini dia sekarang punya property name karena disini kita set property NEMnya eh jadi seperti ini kalau teman-teman mau menambahkan properti karena ujung-ujungnya ya hasilnya dia jadi objek juga ya tipe data objek biasa di javascript jadi seperti itu cara menambahkan properti di class Sekarang kita akan bahas tentang method dikelas membuat metode klos sebenarnya bisa dilakukan dengan cara seperti menambah method deconstructor function namun hal tersebut sebenarnya menambahkan method ke dalam Instance objek eh iya saat teman-teman menambahkan sebuah method kedalam sebuah kontraktor itu semuanya yang di makan adalah Instance objek eh jadi nempel di instansinya nah khusus untuk method ya sebenarnya sebaiknya direkomendasikan teman-teman menambahkannya di Prototype jangan di Instance obyeknya eh jadi rekomendasinya nah untungnya di klasik tuh kalau soal kalau kita misalnya mau menambahkan metode itu secara otomatis ditambahkan ke prototypenya bukan ke Instance obyeknya eh jadi Seperti apa caranya caranya seperti ini jadi teman-teman bisa bikin dikelas version langsung disini dalamnya bikin nama vaksinnya Hello kurung buka kurung tutup kalau disini butuh parameter silahkan lalu tinggal kurung kurawal disini isi pangsitnya tidak perlu menambahkan kata kunci function ya jadi seperti ini nah ini ke teman-teman tambahkan disini ini akan nempelnya ke person titik Prototype eh bukan kedalam objek misalnya Eko atau Budi Itu bukan tapi nempelnya ke version titik foto tab dan ini memang rekomendasi ya teman-teman kalau mau menambahkan metode itu rekomendasinya adalah di Prototype bukan di object Instance Oke jadi seperti apa Jadi kalau teman-teman kita akan coba copyface yang ini class properti class method tadi ya oke selesai jadi disini kau temen-temen tambahkan this titik namanya petenis Hello Ya Say hello = function seperti ini name ini juga bisa cuma kalau seperti ini semuanya dia nempelnya di objek Eko dan objek Budi Jadi bukan di Prototype ya Jadi kalau kini misalnya konsol info Hello name My name is this titik name seperti ini yang kita coba lihat sore ini ganti dulu method kita lihat hasilnya Hai ini Eko ya Nah Lihat say hello nya itu nempel di Instance obyeknya Eko kalau Budi juga kita print out ini aksesori body nasinya lihat ini ada CC Hello ini juga ada sehelai SMP ini tidak direkomendasikan teman-teman bikin seperti ini kalau untuk method rekomendasinya adalah teman-teman tambahkan default ya untungnya saat kita menambahkan metode dalam sebuah kelas itu sel tomatis ditambahkannya difoto Tabnya jadi cara menambahkan metode sekarang tidak lagi seperti ini ya ya rekomendasinya teman-teman bikinnya di sini langsung jadi sini langsung Syekh Hello namanya kalau tidak ada parameter tinggal Purwokerto tutup lalu isi dari functionnya kalau butuh parameter tinggal tambahkan disini hanya named lalu istrinya seperti ini sini saya hapus Nah jadi ini lebih Pi kau teman-teman yang sebelumnya belajar bahasa pemrograman seperti PHP atau javahaxor Java gitu ya mungkin lebih familiar dengan pembuatan class seperti ini kita akan refresh hasilnya lihat versionnya sekarang tidak memiliki say hello tapi kalau teman-teman perhatikan prototypenya Nah lihat di foto Tabnya dia punya Syekh elo ini juga sama Say hello ya jadi seperti inilah implementasi aslinya saat teman-teman bikin sebuah metode dalam kelas Jadi sebenarnya itu ditambahkan kedalam prototypenya ya di sini teman-teman bisa Eko say hello Joko Misalnya ini juga sama Budi say hello Joko kita lihat hasilnya nah keluar ya Hello Joko My name is Eko disini Hello Joko My name is Budi jadi seperti ini Jadi ini method di class jadi dia nempelnya diplo kyaknya bukan di Instance obyeknya Sekarang kita akan bahas tentang kelas inheritance sebelumnya kita sudah tahu ya bahwa Prototype itu mendukung pewarisan walaupun Memang agak sedikit tricky ketika kita membuat pewarisan di protect nah untungnya ini diperbaiki di ecmascript versi 6 dengan fitur namanya kelas sebuah kelas itu bisa melakukan pewarisan di dari kelas lainnya Hindia dengan cara kita bisa menggunakan kata kunci extents nah di javascript class inheritance sama seperti protein arietans hanya bisa memiliki 1 classf Eren saja ya Jadi sebelumnya Kalau kita lakukan pewarisan di Prototype itu kan agak sedikit tricky agak ribet harus bikin Sanya Manager detikfoto tab sama dengan meski yang objektif create employee Prototype seperti itu Nah kalau di ecmascript versi 6 ituu lebih gampang teman-teman cukup menggunakan kata kunci yang namanya extend keju Seperti apa jadi seperti ini contohnya teman-teman punya Clash employee namanya gitu ya lalu disini teman-teman punya kelas Manager lalu disini teman-teman kalau pengen Manager ini mewarisi apa yang dimiliki sama employee cukup gunakan next yay jadi bisa seperti ini oke ya kita akan coba Jadi disini misalnya kita coba eh yang method ini saya copy paste kelas inheritance ya di sini inheritance jadi kita hapus dulu ya semuanya ya jadi di sini kita bikin kelas namanya employee Ya seperti ini lalu kita bikin kontraktor name Disney = m lalu di sini ada C hello NEM Halo di sini konsol titik info Hello name My name is employed the Static name nah seperti ini Oke saya akan copyface di sini ya di sini Manager tapi bedanya Disini saya akan extend ini employed seperti ini nah ketika kita ini konon perhatikan ini error ya error nya kalau teman-teman perhatikan eh harus manggil Kesatria ini nanti kita akan bahas soal ini jadi disini biar enggak terjadi error gitu ya ini saya akan Hapus dulu ya Ini juga saya akan Hapus dulu ya biar tidak terjadi error aja sih nanti kita akan bahas Kenapa itu error gitu ya Oke Jadi intinya disini employee disini Manager jadi saya akan manggil extend ya employee apa yang terjadi kita akan coba Hai guys jadi kita akan bikin Budi dari employee ya dan juga Eko dari manajer nanti kita hello apa yang keluar Oke kita bikin Budi sama dengan employee lalu Budi titik name sama dengan Budi Ya halo Buddhis Eh elo Joko seperti ini Lalu di sini Kita buat yang baru saya ganti jadi Eko Oke bentar Ini ganti Eko dan disini ganti manajer oke ya kita akan coba lihat hasilnya nah disini Hello Joko Oke salah salah nih sini ya ini harusnya ganti manajer Keppres nah udah benar sekarang Hello Joko mynameis employee Budi udah bener ya karena ini employee nah ini Hai hukum Euis Manager Eko ini sudah benar ini Manager eh Nah kita pengen lihat obyeknya Seperti apa konsol info Budi eh dan juga konsol info Eko Oke kita akan lihat ini yang Budi dulu nih ya yang employee dia ada proto proto nya itu adalah employee benar lalu di ada Protol lagi fotonya adalah objek berarti bener oke Nah selanjutnya Disini yang Manager Eko kalau kita perhatikan dia protonnya ini yang pertama adalah manajer proto di atasnya ada Protol lagi dimana disini adalah employee proto dan di atasnya ada proto lagi yaitu adalah objek jadi Sudah bener nih pewarisannya ya jadi dari intense objek ke manajer Prototype ke employee Prototype baru ke objek di sini punya Hello Yadi employee itu punya Hello dan dimana juga punya Hai hello makanya ketika di Manager kita Panggil yang di yang didapat yang pertama yang dulu yang saya helm milik Manager kalau ini kita hapus contohnya saya komen ya Nah walaupun di sini manajer tidak memiliki say hello tapi karena dia extend dari employee dari sini maka otomatis kan foto Tabnya ngikut ya jadi ketika saya panggil Syekh Hello di Eko ini pertama dia cek dulu di objek ini Ada tidak Kalau tidak ada saya akan ngecek protect Manager kalau disini tidak punya saya akan ngecek Prototype di employee gimana di sini employee dia punya Oke kita coba dipress rasanya dia tetap sukses Hello Eko My name is employee ko eh walaupun di sini tidak memiliki sehelai Tapi karena kita extend employee maka ini punya kalau kita tidak extend employee contohnya Ini pasti error Nah Lihat karena Eko tidak punya say hello jadi ini Polri sandi kelasnya Jadi sebenarnya ya ujung-ujungnya dia adalah Prototype juga itu ya maka dari itu teman-teman beneran harus ngerti tentang konsep Prototype ya kalau javascript karena walaupun ini object-oriented programming Sebenarnya dia implementasinya adalah berbasis Prototype Sekarang kita akan bahas tentang super kontraktor klaseen hari dan sifatnya seperti Prototype inheritance nah bagaimana dengan kontraktor inheritance nah sebenarnya konseptor inheritance hanyalah melakukan eksekusi kontraktor lain dengan tujuan agar properti di kos aktor lainnya bisa ditambahkan di instansi objek tersebut Jadi mirip kaya sebelumnya saat kita manggil konseptor lain kita bisa menggunakan nama kota ternyata titik call seperti itu ya waktu kita bikin pakai kontraktor function nah ini juga sama saat teman-teman bikin menggunakan class ya kata kunci class teman-teman juga sama cuma ndak adalah ketika teman-teman menggunakan sekoci kelas dianggapnya menjadi sedikit menjadi wajib ya untuk memanggil kontraktor milik parent class nya ya jadi dalam kasus ini jikalau kita ingin mencapai hal yang sama seperti kita lakukan dipang Sion kontraktor gitu ya memanggil kontraktor lain menggunakan call kita bisa menggunakan kata kunci super ya di dalam konstruktor kata kunci super digunakan untuk memanggil Constructor dari superclass nya jadi kalau kita membuat sebuah class lebih itu ekstensi kelas lain nah teman-teman mau memanggil kontraktor yang ada di dalam kelas ekstern yaitu maka teman-teman menggunakan kata kunci super jikalau chalta situ membuat sebuah kontraktor maka kita wajib memanggil peron kontraktor walaupun different konseptor itu tidak ada kontraktornya eh Oke jadi seperti apa contohnya kita akan update yang sebelumnya kita bikin ya Jadi sebelumnya kita bikin contract employee class jadi tambahkan kontraktor Fort misalnya kita akan coba ini kita akan copyface dulu yang class inheritance menjadi Class Super kontraktor Hei selesai ya di sini kita akan buat kontraktor di sini ada parameter NEMnya ya ludis titik name sama dengan nah misal seperti ini jadi kita bikin kontraktor di employee sekarang pertanyaannya apa yang terjadi di manajernya saat teman-teman bikin converter disini maka secara otomatis manajernya kalau disini tidak memiliki kontraktor dia otomatis akan memiliki konseptor ini jadinya teman-teman bisa Budi ya Jadi kalau Budi Ini kalau otomatis akhir-akhir kontraktor yang ini ya di sini kita nggak perlu lagi ya nah gimana dengan manajer seperti ini manajer juga dia otomatis dia punya konstruktor ya named Jadi mirip seperti ini jadi apa yang dimiliki sama employee diturunkan ke sini ya di sini juga teman-teman bisa pakai contohnya Eko nah seperti ini contohnya Ini kalau kita buka hasilnya Harusnya sama saja Nah lihat ya keluar ya namanya Budi Danny namanya Eko jadi secara otomatis saat teman-teman membuat kontraktor ya maka dia akan dimiliki sama semua turunannya ya yaitu Manager contohnya turunannya oke sekarang pertanyaannya Gimana kalau di Manager ini saya pengen biebo membuat kontraktor juga saat teman-teman bikin kontraktor di kelas turunannya atau capresnya Istilahnya ya Clan teman akan wajib ya memanggil kontraktor yang different kelasnya artinya Apa artinya kalau teman-teman tidak memanggil itu akan terjadi error nah gimana cara memanggilnya cara memanggilnya cukup menggunakan kata kunci super Jadi support ini otomatis dia memanggil Constructor yang ada di pr-nya nah teman-teman cuma boleh manggil super itu di dalam kontraktor tidak boleh di method hello hello itu enggak boleh jadi super itu harus di dalam kontraktornya itu teh teman-teman manggis super dimanakan di employee itu ada satu parameter misalnya named ya Temen temen di sini tinggal masukkan contohnya voltnya jadi bisa seperti itu Oke jadi ini batik perlu kita ubah dulu ini bukan named ya ini first name ini first name ini first name ini pers name Oke seperti itu jadi disini kalau teman-teman mau menambahkan kontraktor ya didalam kelas Manager misalnya first name a Hasna menjadi teman-teman wajib memanggil kontraktor yang ada di pr-nya yaitu ini dan cara manggilnya cukup gunakan kata kunci super kurung buka kurung tutup Silahkan masukkan parameternya disini apa Nah disini tidak hero sebenarnya kalau teman-teman tidak memasukkan parameter Kenapa karena ya namanya DJ pasif opsional ya parameter itu tidak wajib di sih kalau enggak dia jadinya and Divine seperti itu value-nya Oke kita sini kita isi pakai firstname jadi yang postname ini saya akan kirimkan ke Fort yang ini coaster ini otomatis anti dia punya properti this titik firstname jadi sini Saya tidak perlu lagi this titik first name tidak perlu lagi karena sudah dideklarasikan di kontraktor milik pernya edisi ini saya bisa fokus ke di Static class name = last name nya di seperti itu Oke jadi ini saya ubah ya yang manajernya first name di STT classname oke selesai seperti ini jadi untuk ya meja sekarang saya enggak cuma Eko first namanya bisa tambahkan lastname contohnya kanedi nah seperti ini Jadi ini adalah super kontraktor jadi ini kontraktor milik cepernya karena employee itu adalah Peren dari sih Manager kita akan Coba refresh nasinya keluar di sini Hello Joko My name is Budi ya dan di sini Hello Joko My name is Manager Eko Kennedy eh jadi ada first name dan lantainya ini yang employee cuma punya first name dan yang Manager dia tetap punya first name dan dia juga punya lastname Edi seperti ini tentang super kontraktor jadi saat teman-teman bikin kontraktor dicabutnya itu wajib memanggil super kontraktornya walaupun design tidak ada contohnya teman-teman tidak ada misalnya ya hampir teh disini tetap wajib kalau teman-teman tidak seperti ini terjadi error eh jadi wajib teman-teman memanggil Hai Keh jadi itu adalah super kontraktor Sekarang kita akan bahas tentang super method Selain digunakan untuk memanggil kontraktor ya milik parent class nya kata kunci super juga bisa kita gunakan untuk mengakses method pr-nya jadi misalnya teman-teman mau mengakses metode yang ada di pr-nya ya dihindari calegnya gitu teman-teman bisa menggunakan kata kunci super ya caranya bisa menggunakan super ya kata kuncinya titik nama function yang kira-kira apa eh seperti itu dengan kata lain super sebenarnya adalah referensi ke peron prototypenya jadi saat teman-teman mengakses super sebenarnya itu adalah referensi ke peron prototypenya seperti itu Jadi kalau yang sebelumnya dari manajer ketiak kita Panggil super semuanya kita mengakses class employee eh Prototype si employee nya ke seperti itu jadi contohnya seperti ini mineral kita akan buat lagi sebuah kelas yang berbeda punya kelas yang namanya save ya aku disini punya method namanya paint ya Oh di sini ada paint save lalu kita bikin sirqol ya Nasir kali ini extensive Nah tapi di sini kita deklarasikan ulang sih pengennya artinya Apa artinya metode ini menutup si method ini jadi kalau saya buat objek sirkel Ketika saya panggil paint itu saya manggilnya ini ya Gimana kalau saya pengen Panggil yang ini juga nah kalau saya pengen Panggil yang di atas yang kita bisa gunakan kata kunci super jadi super itu seakan-akan ini referensi ke super kelasnya gitu ya jadi dari sirkel batikita ketika manggis super itu langsung ke self ini lebih dekat kita Panggil titik paint berarti kita manggil si paint yang ini eh kita akan coba ke ini saya close dulu a class super method hai oke lalu di sini kita bikin clacef ya di sini kita punya paint di sini ya simpel ajalah ya karena kita ingin ngetes aja ya di sini keluarnya apa Insert key selesai lalu di sini kita punya Clash namanya sirkel gitu ya lalu di sini kita punya apain lagi nah seperti ini konsol info paint sirkel misal seperti ini lalu kita set ini extend Sip Oke selanjutnya kita akan coba buat sirkel = n eh lalu kita Panggil skirt tolnya paint kita Panggil paint itu kan ke dicek di instansi relnya dia nggak punya ya maka dia akan naik ke prototypenya dimana prototypenya adalah circle ini seekor Prototype dia punya method pen Nah karena dia punya maka otomatis yang keluar harusnya adalah ini paint sirkel kita akan coba untuk memastikan kita cek Apakah benar Nah keluar ya paint sirkel Hatinya sudah benar kalau di sini kita hapus saja komen saya reload nengko adalah prinsip Jadi ketika kita akses paint ngecek di circle nya tidak ada ya Dines obyeknya dia naik ke Prototype virtualnya tidak ada juga di sini lalu disini kebetulan ekstensif jadi dia naik ke save ke prototypenya di sini ada Eh jadi dia keluar ini paint save gimana kalau kita sudah terlanjur bikin di sini tapi kita pengen manggil yang di sininya maka disini kita bisa gunakan kata kunci super titik nama metalnya kerja di sini paint seperti ini ya Kyai dari press nah hanya keluar paint cheap brand juga paint sirkel jadi disini ketika kita sirkel = N Cold gitu ya habis itu disini sirkel paint jadi dia mengecek dulu apakah di sirkel ada tidak ada maka dia naik ke foto Tabnya Oh ada tapi ketika kita memanggil method ini difoto tab nyata-nyata didalamnya kita manggil prototype yang diatasnya ya lalu Panggil metodenya dulu jadi kita manggil ini dulu setelah selesai baru kita manggil Yang ini jadi keduanya yang ini dulu pen set lalu paint sirkel Al keluarnya seperti ini jadi kata kunci super juga tidak hanya digunakan untuk mengakses kontraktor ya teman-teman juga bisa mengakses metode Prototype di atasnya jadi bisa seperti itu dan ini enggak harus nama function yang sama Jadi kalau disini unknown ada nama panggilan yang lain contohnya eh paint dua seperti ini ya teman-teman mengakses pm2 juga boleh enggak masalah oke ya yang penting ada di super prototypenya kini hapus lagi jadi seperti ini tentang super method di javascript Sekarang kita akan bahas tentang ZR dan juga share di kelas-kelas juga mendukung pembuatan getter dan setter Kenapa karena Ya ujung-ujungnya kan kalau kita bikin object dari class yang ujungnya adalah tipe data objek tadi dalam javascript dasarnya materinya kita sudah bahas tentang getter dan setter nah jadi nah di sini kita bisa juga implementasikan getter dan setter dalam kelas tapi perlu Diingat getter dan setter ini akan berada di prototipe yah bukan di Instance objek eh jadi method dan juga getter dan setter itu adanya di Prototype ya Jadi bukan nempelnya di Instance objek Oke Seperti apa cara pembuatannya jadi seperti ini jadi kita bisa bikin get bisanya fullname sama aset fullname jadi ya sepertiga yang setter biasanya di javascript dasar yang sudah kita bahas materinya jadi dia seperti ini contohnya ya Kalau teman-teman mau nanti kau teman-teman coba print out objek personnya Ya instansinya ini Disini lihat tidak ada diet dan setnya ya gensetnya adanya di sini eh adanya di prototypenya Oke kita akan coba Ya silakan coba buat ya Apakah benar atau tidak Oke kita akan buat namanya adalah class geter setup Ops Oke jadi kita samakan aja ya bikinnya class person dimana disini kita punya kontraktor ada Hai named dan juga lastname lalu kita ubah ya properti this first namanya sama dengan Force name ya di Static class namanya sama dengan lastname lalu kita mau implementasi gearset Teruntuk fullname dimana fullname itu digunakan untuk mengambil data firstime dan ras name kita peget fullname Contohnya seperti ini ya disetting garitan kita pakai ini batik ya this first name This last name nah seperti ini lalu set full name lalu disini value-nya kira-kira apa lalu file-nya kita Sprite ya kita gunakan seperti ini jadi kita Sprite ya pakai petik Sorry bukan petik dua apa pakai spasi lalu yang pertama kita masukkan ke dalam Porseni Mi sorry salah ya harusnya Resort yang satu ini Noni satu ke snam Oke kita coba disini Resort sama dengan value splitt pakai spasi lalu this titik voltnya kita ambil riset yang nol dan yang klasnem ya kita ambil yang satu Oke jadi seperti ini Kita bikin conseco misalnya semua dengan New verson Eko khannedy eh kita akan konsol info Eko kita lihat hasilnya ini pearson ya dan di sini ada first name adalah stem dan ada fullname tapi bomnya ini dibilang kalau ini adalah akan menginfokan properti untuk get terjadi walaupun adab properti fullname tapi dia akan memanggil segrt er ya geter yang ini get full name ya adanya di prototypenya jadi yang geter Sama saya juga mirip kayak atau Jadi nempelnya bukan di Instance obyeknya melainkan di prototypenya eh jadi seperti itu kita akan coba konsol info misalnya Eko titik fullname Ya seperti ini saya coba save saya refresh disini hasilnya Eko kanedi ya kita akan coba Eko titik fullname sama dengan misalnya Budi Nugraha lalu kita akan konsol info lagi Eko seri flash nah hasilnya sekarang di sini keluarnya Budi dan Nugraha jadi seperti ini prementasi getter dan setter di kelas jadi kita juga bisa implementasikan getter dan setter Sekarang kita akan bahas tentang public class field biasanya Saat kita ingin menambahkan field atau properti yang berisi value kita biasanya menambahkan di dalam faktor namun ada proposal baru di ecmascript itu yang mengajukan pembuatan public class field ya yaitu ditempatkan diluar kontraktor selevel dengan penempatan method proposal ini belum beneran final ya jadi teman-teman juga bisa cek ya detail Proposalnya disini nah tapi beberapa browser Contohnya Google Chrome itu sudah implementasi ini public class with ini Eh jadi teman-teman kalau pengen lihat detailnya Seperti apa ya Proposalnya teman-teman bisa baca di proposal di sini ya di komunitas ecmascript nya Nah jadi kita akan bahas Kenapa karena ini lumayan menarik gitu ya jadi salah satu masalah di javascript itu properti yang dibuat di dalam kelas gitu ya dan objek itu sifatnya adalah public default-nya jadi bisa diakses dari manapun Oke jadi ini caranya jadi public class to apa di dalam proposal tersebut disebutkan bahwa ecmascript akan mendukung access modifier atau Chibi Little atau istilahnya tuh dari mana sebuah data itu bisa diakses nah di sana dia mengajukan dua hal yang pertama public dan yang kedua adalah private-public artinya bisa diakses dari luar kelas dan privat hanya bisa diakses dari dalam kelas saja jadi artinya Apa artinya adalah secara default sebenarnya di javascript semuanya sifatnya publik jadi bisa diakses dari manapun ketika kita bikin object Instance Eko lalu dia punya first time dan juga last name ya misalnya nah di sana firstname bisa diakses dari manapun terserah ya Nah di proposal ini diajukan bahwa kita perlu membuat yang namanya public dan juga private ya Jadi yang public yang seperti biasanya bisa diakses dari manapun tapi kalau yang private itu cuma boleh diakses dari dalam kelasnya Jadi kalau di luar kelasnya itu tidak boleh diakses private files ya Sorry private class with itu nanti akan kita bahas di chapter selanjutnya sekarang kita fokus yang ke pabriknya Hai tahun tuk membuat public class pilkita bisa langsung membuat nama file-nya ya dengan value-nya kalau misalnya mau ada value-nya kalau tidak ada videonya Maka hasilnya adalah and Divine ininya isi dari field nya dan itu selevel dengan metode jadi satu level dengan metode cara pembuatannya jikalau kita tidak memasukkan Fit ke dalam sore tidak masukkan value ke dalam file tersebut artinya file tersebut memiliki nilai and Divine jadi seperti apa jadi seperti ini cara pembuatannya dari teman-teman bikin kelas misalnya customer gitu ya lalu kita bikin Force 6.2 Sedetik koma klasmen.com Abel n = 0,4 pengen langsung memasukkan value ya jadi seperti ini jadi satu level dengan ketika teman-teman bikin method yah jadi sama jadi tidak perlu di dalam sebuah kontraktor nah ketika teman-teman bikin kelasnya seperti ini maka ini adalah kita anggap public field ya ya Hai jadi kalau kita bikin Eko object Instance Eko maka secara otomatis Eko ini punya first name last name dan balance dan filini ini nempelnya di Instance obyeknya ya bukan di prototypenya jadi seperti ini jadi saat saya print out ini customer ada keluar balesnya nol persnelingnya and Divine kami disini Persema tidak saya masukkan apapun last nya juga and Divine karena design tidak kita masukkan data apapun ya jadi seperti ini kita akan coba saya bikin nama wa file-nya Clash of public health ya Oke jadi kita bikin class customer ya jadikan Biasanya kita bikin kontraktor seperti ini lalu bisa bikin sehelai misalnya Ati ini ya kalau untuk method Nah kalau untuk properti teman-teman bisa langsung di sini saja ya satu level dengan kontraktor dan juga dengan metodenya boleh di mana aja tapi biasanya sih ditempatin di atas biar terstruktur ya jadi paling atas itu filmnya yang tengah itu kontraktor yang bawa itu method-method nya edisi contohnya first name ya seperti ini habis itu lastname contohnya di sini ada balanced misalnya Belen saya masukkan datanya kosong seperti ini bisa eh jadi seperti ini cara pembuatan File atau properti yang berisi value di dalam kelas dan ini sifatnya public ya Oke jangan lupa Ini fiturnya saat ini masih dalam proses development Proposalnya jadi pastikan teman-teman menggunakan Browser yang support ya contohnya saya menggunakan Google Chrome dan ini udah support for teman-teman tidak menggunakan Google Chrome contohnya teman-teman bisa tes di browsernya Apakah fitur ini jalan atau tidak diceritakan buat conseco = customer jadi kita bisa Eko titik ada first name adalah nama ada balon seperti itu kita akan konsol info dulu Eko kita lihat hasilnya jadi di sini ada customer ya lihat di sini ada Balance Balance nilainya nol kalau di sini kita masukkan no lalu Porsche namanya adalah and Divine karena tidak kita masukkan pertama kali lalu lestenya adalah and Divine dan karena design kita tidak masukkan pertama kali dan ini nanti akan nempelnya di instansi yg kau teman-teman nanti bikin Budi lalu teman-teman rubah full stainless namanya ya yang berubah adalah Budi saja yang Eko tidak akan berubah jadi seperti itu Jadi ini adalah eh public field di javascript ya Oke fans-nya kalau teman-teman misalnya sudah membuat public class file teman-teman juga bisa akses atau ubah datanya dia via kon free itu juga boleh kok teman-teman mau jadi seperti ini contohnya ya jadi kita bisa disini contohnya di kontraktor menambahkan first name last name contohnya ludis titik Force name = firstname di Static class name = last night juga boleh yang percaya Mini beting akses yang properti yang ini yang Lasmini ngakses field yang ini jadi ini juga boleh ini kece ubah Sanya Eko khannedy kayak kita hari flash nah hasilnya sekarang Beyonce masih tetap nol forstner sekarang berubah menjadi Eko dan lantainya berubah menjadi kanedi jadi ini adalah fabric feat ya didalam kelas di javascript Sekarang kita akan bahas tentang private class field secara default saat kita menambahkan file ke dalam file tersebut itu biasanya bisa diakses dari manapun ya file-nya jadi sifatnya adalah public tadi kalau kita yang buat sebuah file yang sifatnya privat artinya hanya bisa diakses dari dalam khasnya kita bisa menggunakan tanda ini Crash ya atau ada yang bilang siap juga ya karena dari mungkin bahasa pemograman sisapp seperti itu dipanggilnya siap tapi semuanya tanda kres seperti ini ya Jadi sebelum nama filmnya jadi kalau teman-teman tambahkan Crash di depannya gitu ya tanda seperti ini ini dianggap kalau file tersebut adalah private party nya apa artinya tidak bisa diakses dari luar ya ini dinamakan private class with dan hanya bisa diakses dari dalam kelas saja Oke jadi seperti apa Jadi teman-teman bisa bikin seperti ini nih ya artinya Apa artinya field kaunter ini yang depannya ada tanda kerasnya ini ini dianggapnya ini private tidak bisa diakses dari luar dari luar kelas mereka teman-teman bikin instansinya disini incest obyeknya teman-teman Nggak bisa nggak bisa ngakses counter titik crash Entar itu enggak bisa enggak bisa diakses jadi kalau bisa diakses dari dalam kelasnya saja Eh katanya disini saya bikin sebuah method inkremen untuk menaikkan si counternya dekremen untuk menurunkan counternya dan get untuk mendapatkan nilai yang ada di counter ini nah jadi seperti ini jadi kalau teman-teman mau bikin field yang cuma bisa diakses dari dalam kelas saja silahkan gunakan private class bet caranya sama tinggal tambahkan Christie depannya dan ingat ini masih dalam proposal yang sebelumnya juga yang public class field ya jadi pastikan teman-teman ya cek dulu browsernya pakai apa ya pastikan bisa digunakan di brosur tersebut atau tidak Kita akan coba jadi di sini kita buat file baru nama file-nya adalah class private field Oke kita akan buat jadi di sini kita akan bikin Clash COC Ntar ya lalu kan biasanya kita bikin konter sama dengan nol seperti ini ya nah ini kalau kita pengen ini jadi private tidak bisa diakses dari luar Kenapa biar tidak ada orang yang bisa mengubah misalnya seperti itu ya Nah karena kan kalau bisa diakses dari luar Nanti bisa diubah jadi kalau kita bikin soalnya const-string konter sama dengan New counter contohnya Ini kan nanti bisa dirubah counter titik konter sama dengan 100 mil sadiba seperti ini Nah kita pengennya counternya tidak bisa diubah kalau mau naikkan atau menurunkan kita bisa bikin sebuah method misalnya inkremen seperti ini dan juga di kremen untuk menurunkan satu lalu kita bisa get untuk mengambil data counternya jadi biar ini tidak bisa diakses dari luar seperti ini ya kita tambahkan Crash biar menjadi private jadi di sini kita akan Adis titik counterpart plus ya untuk menaikkan lalu yang ini minus minus untuk menurunkan dan yang ini kita tinggal Ritan eh sorry this counter nah seperti ini Jadi ini ketika teman-teman ubah tetap counter ini tidak akan berubah Kenapa karena kita cuma merubah counter bukan Crash counter seperti ini ya Oke jadi disini teman-teman bisa kita akan konsol info counter titik get ya kalau kita akan coba naikkan jadi kita akan naikkan saya lima kali counter titik inkremen Ya 123455 kali jadi harapannya disini nilainya sekarang adalah lima ya karena kita inkremen sebanyak lima kali kita akan coba lihat hasilnya nasinya adalah lima kalau kita print-out ininya counternya kita cek apa pada melihat disini counter nah disini tetap pada Crash ya kita bisa lihat ada counter ini eh dan di sini ada dekremen get dan juga inkremen Jadi sebenarnya dia ada atribut atau properti counter Crash counter seperti ini ya jadi di sini pun kita mengaksesnya keras counter seperti ini Nah kalau teman-teman coba iseng ngerubah contohnya disini saya ubah kaunter titik kaunter = 101 teman-teman tidak akan merubah counter ini ya Jadi kalau kita refresh Nah lihat di sini kini ada counter 100 tapi yang tepatnya ini masih tetap 5 kode mencoba iseng Oke saya ubah dengan pakai tuh tambahkan keras seperti ini Ya ini error gak kita chek Nah Lihat ini error ya private countermax be different and coaching class jadi ini private nggak bisa diakses dari luar sini otomatis dia error jadi seperti ini kalau teman-teman mau melindungi sebuah field ya Jadi tinggal di jadikan dia sebagai private files aja sekarang kita akan bahas tentang private method sama seperti field terdapat proposal juga untuk menambahkan fitur yang namanya private metode ecmascript ya Nah dengan demikian access modifier private juga bisa digunakan di method Jadi sebelumnya kita sudah bahas yang private field dan ternyata di metode juga sudah ada Proposalnya yang caranya sama dengan kita cukup tambahkan tanda Crash ya di awal methodnya maka secara otomatis method tersebut sifatnya adalah private nah ingat ya fitur ini masih dalam tahapan belum benar-benar standar ecmascript Jadi mungkin tidak semua browser mendukung ya Atau mungkin bisa saja berubah nanti implementasinya tidak menggunakan tanda kres lagi misalnya jadi teman-teman untuk mengecek maka sudah berubah atau sudah File atau tidak tentang bisa lihat di link ini ya Proposalnya eh jadi seperti apa Jadi teman-teman kalau mau contohnya bisa bikin tambahkan keras di depannya ya untuk methodnya otomatis metode ini cuma bisa diakses di dalam kelas persennya ketika di luar ketika teman-teman bikin sebuah Instance obyeknya contohnya Ini tidak bisa diakses ya kita akan coba ya kita kan buat saya akan buat file namanya adalah kelas privat metode kita bikin class person disini kita akan bikin method say hello menggunakan named ya lalu Disini saya akan bikin say hello samakan aja ya say ini saya doang ya Sorry Say wi.com dan with name jadi ini saya aja ini say without name tanpa nama ya Dan ini Stay with name ini NEMnya jadi disini Saya cukup cek kalau ada NEMnya gitu ya kita Panggil yang Sei without name sorry say with name hak pakai named Kalau misalnya tidak ada NEMnya kita say with Daud name nah seperti ini jadi cara Maksudnya Sama ya menggunakan this titik depannya selalu ada kerasnya teh selanjutnya Disini saya akan konsol info Hello saja ya kita samakan nah Kalo yang ini baru Hello named nah seperti ini ya kita akan coba buat account sama dengan new version lalu Eko titik say ya bisa langsung disini hanya ea Joko kita cek hasilnya keluar ya Hello joknya gimana kalau kita maksa manggil Yang ini saya w.z. misalnya jadi disini Eko titik say without name seperti ini kita Coba refresh nah hasilnya lihat ini adalah private ya jadi filter untuk say Windows name it upright jadi tidak bisa diakses seperti ini Jadi ini adalah private metode kau teman-teman pengen bikin method yang tidak bisa diakses dari manapun kecuali di dalam kelasnya itu sendiri nah teman-teman bisa tambahkan kreasi depannya Nah itu kita bilang namanya adalah private method Sekarang kita akan bahas tentang Oop sore Instance of kadang ada kasus kita ingin mengecek Apakah sebuah objek itu memiliki atau merupakan Instance dari sebuah kelas tertentu atau bukan kadang kita pengen ngecek seperti itu Nah kita tidak bisa menggunakan operator type of Kenapa karena kalau operator thepopp itu ya hasilnya itu selalu objek Jadi kalau teman-teman bikin misalnya Instance objek Eko dari class person ketika teman-teman cek type of nya apa Maka hasilnya adalah objek Nah kadang-kadang kita pengen tahu apakah dia itu merupakan Instance dari sebuah kelas tertentu atau bukan nah kita bisa menggunakan operator yang namanya Instance of untuk operator in shop ini akan menghasilkan nilai Bulian artinya apa truk kalau misalnya benar ya Fals kalau salah oke Seperti apa cara penggunaannya gadget akan coba lihat disini jadi bisa kita punya dua kelas namanya kelas employee dan kelas Manager kalau teman-teman bikin ya Instance objek Budi dan e ini dari employee dan Eko dari manajer Nah kita akan buat dulu jadi Disini saya akan buat nama file-nya adalah operator Instance of kita akan bikin kelas employee dan juga kelas Manager sayurnya kita bikin Eko Budi sama dengan New employee eh lalu Eko = new Manager Oke kalau teman-teman coba perhatikan kita akan gunakan misalnya type of gitu ya Budi ya atau Time of Eko Nah kita lihat hasilnya ini kalau misalnya teman-teman berharap nanti yang keluar adalah employee atau manajer bukan ya Jadi bukan seperti itu cara kerjanya Jadi yang keluar dalam objek jadi string Jack jadi ketika Taipo Pudi itu Walaupun dia dibuat dari kelas employee tapi hasilnya dia adalah objek eh jadi untuk mengecek Apakah dia adalah employee class sample atau manajer bukan seperti itu caranya jadi thepopp itu tidak digunakan untuk mengecek dia hasil dari instansiasi kelas apa gimana cara mengeceknya cara mengeceknya itu adalah menggunakan Instance operatornya jadi teman-teman bisa gunakan Budi Instance of employee nah ini hasilnya akan bully-an true atau false true Kalau memang dia adalah Instance of tersebut Fals kalau bukan jadi seperti ini ya di konsol info misalnya Budi Instance of employee ya bisa seperti ini sama manajer Oke kita tahu kalau Budi itu dibuat dari employee Jadi kalau Budi Instance of employee harusnya ini nilainya true ya Dan kalau Budi instan Hai Manager ini harusnya nilainya Force Kenapa karena Budi itu dibuat dari employee bukan dari manajer Oke kita akan coba tak lihat hasilnya ini through ya mati ini benar ini truk dan ini Fals Ya sudah benar batik Oke kalau misalnya kita cek yang Eko Eko terlihat hasilnya hasilnya disini Fals Eko Instance of employee memang bukannya Eko itu bukan employed tidak dibuat dari kelas employee lalu kalau Eko Instance of Manager Ini hasilnya truk ya berarti sudah benar kalau Eko itu memang dibikin dari kelas Manager jadi seperti ini operator tentang Instance of ya teman-teman kalau mau mengecek sebuah object Instance itu dibuat dari kelas apa gitu ya itu teman-teman bisa gunakan Instance of operator Instance of juga mendukung yang namanya kelas inheritance artinya Apa artinya insom juga bisa digunakan untuk cek Apakah sebuah object adalah Instance dari class tertentu atau turunan dari kelas tertentu jadi itu juga bisa jadi teman-teman enggak cuma menggunakan insop untuk mengecek Apakah dia sebuah kelas tertentu atau tidak teman-teman kalau pengen ngecek karenanya juga boleh Kayak misalnya kita akan ubah jadi misalnya kita akan ubah yang Manager ini extend employee Nah kita akan lihat hasilnya Apa perbedaannya OK jadi di sini kita tahu ya di sini Tadinya itu adalah volt Sasori true Ya karena memang Budi Instance dari employee ini Fals Karena Budi Bukan manager ini Fals ya karena Bu Eko itu bukan employee dan ini truk karena Eko itu dari kelas Manager sekarang kita ubah ini menjadi extend employee seperti ini ya Jadi ini kita ubah kita lihat hasilnya sekarang ac-nya ini truk ini masih sama ini Fals ya masih sama files Kenapa karena ini memang dibuat langsung pakai money employee Bukan manager waterfalls nah disini nilai nya truk ya Eko Instance of employee Ini tadinya for sekarang berubah menjadi truk Nah kenapa ini menjadi true karena ya Eko itu walaupun dibuat dari manajer Tapi dia itu turunan dari employee karena ini dibuat ya kelas Manager itu extend employee artinya Apa artinya kemampuan yang dimiliki apapun itu dari employee entah itu nanti propertinya atau juga method-method nya itu otomatis dimiliki sama si manajer maka dari kedua kalau kita ke cek Apakah Eko Instance of employee maka sekarang hasilnya menjadi truk ya semenjak kita lakukan pewarisan disini menggunakan next Maka hasilnya dia menjadi truk jadi seperti ini ya behavior dari operator Instance of jadi dia enggak cuma ngecek Apakah dia Instance dari objek a-yong kita mau tapi juga dia ngecek Apakah dia tuh dan dari objek aatau Solid dari kelas aatau bukan jadi kalau kita cek ecoins of employee itu mengeceknya seperti ini artinya Apakah Eko adalah Instance dari class employee atau turunan dari employee dan ini otomatis sekarang aslinya adalah truk ya Jadi ini truk dan ini juga otomatis tetap truk jadi seperti ini operator Instance of Jadi mirip kaya operator Instance of di bahasa pemograman Java Sekarang kita akan bahas tentang Static class field statik adalah kata kunci yang bisa kita tambahkan dalam sebuah File atau juga method biasanya ketika kita membuat Fit atau method makan secara otomatis B tersebut akan menjadi properti di Instance objek ya kalau misalnya method dia menjadi function di dalam prototypenya Nah berbeda kalau kita tambahkan kata kunci Static kata kunci Static itu Hai itu kalau saya kita tambahkan didalam File atau method hal tersebut tidak akan terjadi sekarang kita bahas tentang Static class with next kita baru bahas Static class yang methodnya jikalau kita menambahkan Static class di dalam Sorry Static field ya itu secara otomatis file tersebut bukan lagi milik dari intense obyeknya melainkan milik dari kelas itu sendiri oke di sini mungkin agak sedikit membingungkan ya Jadi intinya seperti ini kalau teman-teman bikin sebuah feat habis itu filenya teman-teman Jadikan Dia sebagai Static gitu ya Nah file tersebut ketika teman-teman bikin object dari class tersebut gitu ya nafil tersebut tidak akan diset ke dalam SI obyeknya dari Insan objek itu tidak akan diset jadi yang Static file ini Murni dia milih kelasnya bukan milik dari intense obyeknya ya Jadi biasanya Static filter ini digunakan kalau saya kita ingin membuat you TV LED atau mungkin utility function cara mengakses artikel pun tidak lagi lewat objek melainkan langsung lewat kelasnya dan sate class biasanya dia itu sifatnya Global Maksudnya apa tidak peduli Mau diakses dari manapun ya siapapun dan itu hasilnya semuanya dia akan mengakses file yang sama jadi Biasanya kita gunakan yang Sativa spell ini sebagai tempat untuk menyimpan sesuatu secara global Oke karena Seperti apa contohnya kita akan bikin sebuah kelas yang namanya configuration misalnya lalu disini teman-teman bikin Static files namanya named version dan autor kalau teman-teman disini mengaku memasukkan data Center di sini belajar javascript dasar versinya 10 outernya misalnya Eko kita akan coba ya oke Disini saya akan bikin nama file-nya adalah Static Static field of hai hai jadi kita bikin kelas dulu ya configuration misalnya nah biasanya kan kita bikin Khan m = misalnya apa gitu ya ini tanpa adanya Static Oke kita bikin named soalnya belajar javascript op misalnya habis itu versionnya misalnya 1.0 lalu disini autornya misalnya Eko Kurniawan nah seperti ini biasanya kan kita bikin seperti ini kalau teman-teman bikin seperti ini lalu teman-teman bikin obyeknya misalnya konflik = n figuration oh teman-teman konsol titik info config gitu ya Nah ini hasilnya field yang ketiga ini yang nempel Sion dan auto dia akan menjadi properti atau file di dalam sih konflik obyeknya ya ni kalau kita coba buka hasilnya kita ini dia akan masuk kedalam config nah ini configuration ya Nah ini ada Oktora dan m dan ada version nah berbeda kalau teman-teman jadikan Static Kau teman-teman jadikan Static kita lihat hasilnya saya refresh lihat configuration nya yang objek config.ini kosong Jadi ini tidak ikut ke dalam obyeknya Jadi kalau teman-teman jadikan Static ya dia itu NEMnya milik siklus configuration bukan lagi akan dimasukkan ke dalam properti milik si Instance obyeknya Nah sekarang pertanyaannya Gimana cara mengakses name ini kalau gitu ya karena kalau teman-teman Coba akses disini misalnya konflik titik name contohnya ya kita refresh nah hasilnya dia and Divine ya tidak ada karena memang yang fil3 ini sekarang sudah tidak ikut lagi ke dalam obyeknya ya karena pertanyaannya Gimana cara mengakses ini key cara mengakses ini adalah seperti ini ini teman-teman langsung Sebutkan nama kelasnya apa titik nama Static fieldnya Apa jadi ya seakan-akan ini jadi variabel Global dimanapun teman-teman mau aksesnya silahkan akses seperti ini nama kelasnya titik nama propertinya Seperti apa Oke jadi disini kau teman-teman mau mengakses gitu ya Jadi bukan lagi teman-teman bikin obyeknya nggak perlu nggak perlu bikin obyeknya teman-teman bisa langsung konsol info misalnya configuration nama kelasnya titik nama Static file-nya contohnya disini name kalau disini version Disini autor langsung seperti ini ya nih kalau kita pilot hasilnya belajar Java si pop versi 1 dan Eko Kurniawan di sini ya Jadi ini sifatnya global kalau teman-teman Coba ubah configuration titik awalnya misalnya Eko Kennedy ya kita ubah teman-teman refresh lagi lihat ini juga berubah jadi ketika teman-teman pakai configuration Titik autor maka dia juga ikut berubah jadi ini sifatnya kayak Global ya ya teman-teman mengakses dimanapun ngerubah dimanapun maka dia akan otomatis berubah juga jadi ini tentang Static class field Sekarang kita akan bahas tentang statistic method kata kunci Static juga tidak hanya bisa kita gunakan di field tapi juga di method jikalau kita tambahkan dimetoat artinya method tersebut jadi milih kelasnya Jadi mirip kayak materi sebelumnya tentang Static field metode juga sama dia otomatis jadi milik classnya eh Nah jadi bukan milik Prototype lagi nah dan untuk mengakses method tersebut kita juga bisa menggunakan seperti mengakses file Static field jadi tinggal gunakan nama kelasnya titik nama methodnya seperti itu oke oke Hai jadi seperti ini contohnya teman-teman bikin sebuah Static method namanya Matthew gitu ya di sini teman-teman hanya memasukkan semua Static method ya untuk diteliti matematika contohnya Holden kita bikin statistic method namanya Sam ya Static xamzone disini parameternya number segitu ya lalu teman-teman melakukan kalkulasi total dengan teman-teman mau mengakses teman-teman gunakan langsung mati util itu ya nama kelasnya titik nama methodnya jadi seperti ini eh Jadi mirip kayak pembuatan Static field eh ya cukup tambahkan kata kunci Static depannya dan untuk mengaksesnya pun sama kita akan sekarang coba Jadi Disini saya akan bikin nama file-nya adalah Static method kita akan bikin classmate util eh lalu di sini kita bikin Static Sam Ya halo Kini kita bikin parameter number lalu kita bikin Le total = 0 ya audisinya teman-teman bisa lakukan perulangan menggunakan for of ya for of number lalu di sini kita total + = number kalau kita return totalnya selesai Nah selanjutnya disini kau teman-teman mau mengakses ya simple misalnya Resort sama dengan mad yu'til titik Sam contohnya 11111 Oke Takan coba masukkan ke konsol hasilnya kacek hasilnya lima ya sudah benar berarti jadi seperti ini tentang Static method Jadi biasanya kasusnya itu ketika teman-teman mau bikin youtility method gitu ya itu bisa kita simpan dalam Static sport Sekarang kita akan bahas tentang Error saat membuat aplikasi sudah tentu kita tidak akan terhindar dari yang namanya error di dalam javascript error merupakan sesuatu yang sudah standar ya jadi Sudah ada standarisasinya banyak sekali error error plus ya namanya jadi kalau misalnya error DJ pasif itu ada representasi kelasnya itu ya Jadi kita enak banget kalau saya menggunakan object oriented programming javascript karena hampir semuanya sekarang sudah ada implementasi kelas dan juga obyeknya jadi banyak sekali ya kelas error di javascript namun secara semuanya itu kelas Roja pasif itu selalu berujung dari class yang namanya error jadi kayak super perannya gitu ya kelas Error itu arti ini adalah kelas error jadi artinya claser adalah superclass untuk semua jenis error di JavaScript contohnya kelas error yang terdapat di Jawa pasif itu ada banyak contohnya ada syntaxerror ada TP Error ada Eval error dan lain-lain itu banyak sekali gitu ya teman-teman kalau pengen lihat ada apa aja error di javascript gitu ya teman-teman bisa lihat dihalaman dokumentasinya di sini ya di sini ada banyak banget kelas error tapi tenang aja semua kelas sore itu biasanya dia akan extend class error jadi kita cukup tahunya yang class Hero Raja key saat kita membuat Instance object dari class error tidak lantas otomatis terjadi error jadi bukan berarti teman-teman ketika bikin objek misalnya bikin aa sama dengan New error Itu otomatis tiba-tiba error program yang enggak seperti itu cara kerjanya ya kita perlu memberitahu program kita bahkan kita perlu mentrigger sebuah error kalau misalnya teman-teman pengen Error itu terjadi kita harus mentriger error tersebut nah caranya gimana caranya kita perlu melempar error atau hanya throw error untuk melempar error atau mentriger suatu error terjadi kita bisa menggunakan kata kunci yang namanya throw eh kata kuncinya adalah troll diikuti dengan intense objek dari errornya jikalau error terjadi maka secara otomatis kode program kita akan berhenti disitu Jadi kalau teman-teman tiba-tiba ngelakuin teror tiba-tiba di bawahnya masih banyak kode programnya itu akan berhenti disitu ya kalau teman-teman pengen lihat detailnya errornya apa teman-teman bisa buka di konsol aplikasi browser kita Oke jadi seperti apa ya janda seperti ini jadi kita akan update yang sebelumnya kita sudah bikin yang motil yang Sam gitu ya kita cek kalau disini misalnya 6 berselang nya kosong artinya tidak ada parameter data apapun kita akan bikin error kita bikin airnya cukup gunakan throw new error lalu di sini ada messagenya jadi ada kontraktornya di mana kosnya di sini teman-teman cukup tambahkan error messages siapa Oke kita akan coba ya saya akan chopass yang Static method ya copyface ya di sini kita ganti nama file-nya error Oke ini saya ganti detail nya error jadi di sini kita cek dulu ya kalau misalnya 16 Slank nya sama dengan Kosong gitu ya jadi eh tidak ada ininya tidak ada data sama sekali yang dikirim Kita akan men-trigger sebuah error tentang bisa bikin error dulu konser or = new error Contohnya seperti ini katanya di sini eh di sini apa ya total parameter total parameter harus lebih dari nol seperti ini lalu tinggal throw error Nah bisa seperti ini atau simpel langsung aja gitu ya Nggak perlu bikin variabel error dulu langsung aja ini Hai bisa seperti ini langsung nah ini lebih simple kiri ya nggak perlu bikin variabel error dulu gitu Jadi teman-teman bisa seperti ini jadi throw new error ya total parameter harus lebih dari nol misalnya seperti ini ini kalau teman-teman jalankan gitu ya aslinya sih nggak ada error ya Nah Lihat tetap 5 apa yang terjadi kalau teman-teman masukkan kasus yang disini contohnya Sam teman-teman tidak masukkan data apapun maka kejadiannya akan error seperti ini di bagian konsol itu akan ada errornya sesuai dengan pesan yang kita kirimkan dan bahkan bisa dikasih tahu baris mana yang error gitu ya jadi kita bisa gede bak problemnya key contohnya Disini saya akan coba di sini ya konsol titik info Mad yu'til titik some Saya tidak masukkan parameter apapun hatinya kosong hatinya kalau disini kosong saya akses Disini di sini kita cek linknya adalah kos gitu ya dan otomatis dia harusnya terjadi error disini kisah akan naikkan ke atas untuk mengecek Apakah nanti kode yang dibawahnya diakses atau tidak contohnya disini konsol info eh contohnya ya jadi harusnya keluar Eko Tapi nanti kalau disini error kita lihat keluar Eko atau tidak Kita depresi sini nasinya lihat error error nya di sini Ada pesannya total parameter harus lebih dari kosong Jadi ini errornya yang keluar di sini pesan errornya dan baris errornya pun bisa kelihatan Disini di mana Kalau saya klik disini nah lihat dia masuk ke error di sini ya codenya disini ini agak kecilan yg layarnya tapi ternyata bisa lihat di sini baris errornya disini jadi kita bisa ditebak errornya problemnya ada di mana jadi seperti ini kalau terjadi error dan cotton perhatikan ini pun tidak keluar ya artinya Apa artinya ketika kita akses sini lalu ternyata disini terjadi error maka otomatis kode programnya berhenti tidak akan dilanjutkan lagi jadi hati-hati ketika teman-teman bikin error kalau bikin er otomatis kode programnya tidak akan berjalan dia akan distop sama sih browsernya jadi ini kalau teman-teman ingin membuat error ya jadi jangan bikin error manual gitu ya pakai if-else abis itu ngelakuin alur dan sebagainya tapi gunakanlah fitur yang sudah disediakan sama javascript di teman-teman bisa ngelakuin throw error Sekarang kita akan bahas tentang error handling atau penanganan Error saat terjadi error di kode program javascript kita kadang kan kita tidak ingin program kita berhenti jadikan sebelumnya kita tahunya ya kalau misalnya terjadi error kita ngelakuin teror otomatis berhenti ya kode programnya nah DJ pasti semuanya kita bisa menangkap jikalau terjadi error kita bisa menggunakan yang namanya tray cat statement untuk menangkap error jadi mirip kayak dibasmi yang lainnya seperti Java PHP dan yang lain-lain pada blog telah ini kita bisa mencoba ya untuk mengakses kode program yang kira-kiranya akan menyebabkan error dan jikalau terjadi error didalam blog training akan berhenti dan secara otomatis masuk ke blog cache jadi Artinya kita akan mencoba sesuatu kode program yang bisa menyebabkan error kalau terjadi error kita akan cache atau tangkap errornya ya jadi dengan demikian kode program kita tidak akan total berhenti Kita akan menangkap errornya dan teman-teman bisa melakukan apapun ketika teman-teman menangkap errornya jadi seperti apa jadi seperti ini contohnya jadi kita menggunakan blog tray lalu disini dalam blog train it teman-teman silakan masukkan kode program yang sekiranya akan menghasilkan error gitu ya akan terjadi error ketika teman-teman sudah memasukkan kedalam blog tray n bisa menangkap menggunakan cache kalau disini variabel kira-kira terjadi error dia akan dimasukkan ke variabel ini teman-teman di sini mau ngelakuin apa ya kalau terjadi error ketika terjadi error gitu ya Nah di sini kita kita Mas s4y detik sama otomatis error ketika error maka kode program yang ini tidak akan di eksekusi ya Kenapa karena blok c-nya akan berhenti ketika menemui error tapi tenang aja ketika error dia akan langsung loncat ke bagian cache jadi ditangkap errornya ketika masuk ke bagian kesra lalu kita lakukan sesuatu disini maka kode programnya akan dilanjutkan lagi ke bawah jadi kalau Sebelumnya kan total berhenti gitu ya tapi kalau kita menggunakan Raikage itu cuma berhentinya di blog tray tapi dia akan lanjut lagi setelah ngelakuin cache ya kita akan coba ya Jadi kita akan copyface lagi kode yang sebelumnya he sebelumnya kita bikin yang error html kita akan bikin error handling disini handling fee Hai jadi di sini ya teman-teman Oke kita hapusnya yang ini aja jadi kan kalau seperti ini otomatis error ya error nya kan otomatis berhenti ya yang ekornya nggak keluar nah disini ekornya nggak keluar teman-teman bisa lakukan tray cache Halo desain nama variabelnya apa kira-kira kalau sudah ada error gitu ya jadi kece ini cuma akan di eksekusi kalau terjadi error kalau tidak terjadi error dia tidak akan dieksekusi Jadi kalau teman-teman seperti ini kita akan refresh ngelihat tidak terjadi error ya tapi tidak keluar apapun juga Karena disini ketika error ya dia akan otomatis berhenti kode programnya di tray atau otomatis akan masuk ke Blok catch ya di sini teman-teman bisa lakukan konsolindo misalnya terjadi Oke kita pakai ini terjadi error ya kalau teman-teman pengen tahu pesan errornya tonton bisa tangkap dari error ini error titik message ya jadi meses ini properti bawaan dari objek yang dibuat dari kelas error jadi kelas Error itu ada propertinya namanya message dan ini meses ini kita bisa ambil ya dari yang dikirimkan di kontraktor ini Eh kalau kita refresh Nah Lihat terjadi error total parameter lebih dari Solid tetap parameter harus lebih dari nol jadi yang ini yang dieksekusi eh Nah kalau gitu berarti berhenti juga dong enggak kita akan coba cek disini teman-teman perhatikan disini ini misalnya Keane di saya di flash Nah Lihat keluarkan editnya artinya Apa artinya yang berhenti cuma di blog tray aja ya ketika terjadi error dia berhenti yang ekornya tidak dieksekusi tapi habis itu dia masuk ke cache ya kita tangkap Jadi intinya itu kalau misalnya terjadi error kita mau ngapain sih Gitu ya diblok kece nih kita mau ngapain teh disini temen temen bisa Nurfitria peringatan ke usernya kalau ada error misalnya ada sebagainya Lalu setelah itu ya programnya dilanjutkan kembali seperti ini Nah kalau tidak terjadi error contohnya saya masukkan 111 gitu ya very fresh Nah Lihat ini keluar tiga ya Yang ini tiga benar lalu keluar Eko Eko selanjutnya dia masuk ke sini Jadi artinya Apa artinya kalau didalam blog tray ini tidak terjadi error maka blog kece ini tidak akan dieksekusi jadi blog cache ini cuma akan dieksekusi kalau memang terjadi error didalam blog trennya kalau tidak terjadi error ya tidak akan dieksekusi juga gitu ya Oke kita akan Anduk lagi nah seperti ini Jadi ini adalah trichaiya atau penanganan error di javascript asal kita akan bahas tentang kata kunci finally Jadi mirip di bahasa pemograman yang lain juga ya di Java atau di.php didalam blog tray keju ga ada yang namanya blog fine Hai kandang ya kita ingin melakukan sesuatu ya kirimi tidak keluar merahnya nah kadang kita ingin melakukan sesuatu entah itu terjadi error ataupun tidak ya dalam blog trik es kita bisa menambahkan yang namanya blok finally jadi blok finally ini akan selalu dieksekusi setelah tracked selesai entah terjadi error ataupun tidak error blok finally ini akan selalu dieksekusi jadikan kalau blog kece itu akan dieksekusi kalau terjadi error atau rasanya pengen mengeksekusi sesuatu gitu ya entah itu ada error atau tidak nah teman-teman bisa menggunakan blok finally Seperti apa jadi seperti ini dia teman-teman setelah tray cache teman-teman disini tambahkan finally nah blok finally ini akan selalu dieksekusi entah disini terjadi error ataupun tidak itu akan selalu dieksekusi ya Jadi ini Aman banget kalau teman-teman memasukkan kode program di sini ya kayak contohnya mungkin kalau Semoga aman yang bisa connect ke database kayak menutup koneksi ke database misalnya seperti itu Jadi mau terjadi error ataupun tidak gitu ya ya pokoknya koneksi ke database nya harus ditutup misalnya seperti itu Oke kita akan coba ya di sini teman-teman bisa tambahkan finally gitu ya lalu tambahkan bloknya disini katanya disini konsol info program selesai-selesai ini saya refresh Nadia terjadi error ya masuk ke blog cache tapi tetap ada program selesai jadi tetap masuk ke bagian finally walaupun terjadi error kalau tidak terjadi error 9111 saya di flash Nah Lihat tiga keluar Eko keluar program selesainya tetap keluar jadi blok finally ini mau error Mau nggak dia akan tetap dieksekusi Jadi kalau ada kasus seperti itu teman-teman mau ngeluarin sesuatu gitu ya atau mengeksekusi kode program sesuatu entah terjadi Hero ataupun tidak teman-teman bisa akan blok finally kayak gini kita saya balikan lagi refresh nah hasilnya seperti ini Jadi ini penanganan error atau error handling di javascript jadi nggak usah khawatir ya teman-teman nggak perlu takut ketika bikin error ya takut kode programnya pastinya berhenti nggak nggak nggak Totally berhenti gitu ya kau teman-teman melakukan penanganan error dengan baik Nah selanjutnya ada suatu ini ya suatu acaranya tuh kayak trik gitu ya kalau teman-teman mau ngelakuin Tri finally itu juga bisa tanpa harus menggunakan cache Walaupun mungkin ini jarang ya Tapi teman-teman bisa kalau teman-teman mau jadi seperti apa jadinya seperti ini ya jadi teman-teman misalnya kita bikin counter ya Lalu setelah itu teman-teman disini bikin next digunakan untuk eh melakukan kenaikan data ya tapi teman-teman pengen ngebalikin data secara sekaligus Nah itu teman-teman bisa gunakan Tri finally jadi disini kan tidak terjadi error jadi ya udahlah nggak usah cash misalnya ya jadi saya teman-teman bisa right then this value tapi setelah ngelakuin read teman-teman pengen misalnya value-nya dinaikkan nah tonton juga bisa menggunakan tray finally ya jadi kasus-kasus spesifik aja Biasanya untuk menggunakan trifina lengket kita akan coba jadi di sini kita akan coba Bikin counter gitu ya class kaunter jadi di sini kita akan bikin counter tadi kita lihat Oh di sini pakai value ya kita akan bikin pakai private aja konter sama dengan nol contohnya lalu kita bikin next gitu ya method next jadikan biasanya di sini kita riton counter sorry kaunter Nah seperti ini ya Nah cuma misalnya pengen Kontingen habis ngebalikin data ini teman-teman naikkan datanya si counternya jadi kita counter plus-plus tapi kan kalau seperti ini enggak bisa ya kenapa karena kode programnya keburu keburu rhythm gitu ya karena kalau keberurutan otomatis yang kode program dibawah ini tidak akan dieksekusi Jadi kau teman-teman coba Bikin misalnya const-string konter sama dengan New counter kalau kita coba konsol info counter next gitu ya sebanyak lima kali kita lihat hasilnya Nah lihat dia selalu nol Kenapa karena disini setelah teman-teman riten counternya yang dibawah ini keburu tidak dieksekusi nah kasus seperti ini teman-teman bisa gunakan tray finally jadi tray ya kita balikan data ini tapi setelah kita balikan kita tambahkan finally kita naikkan sikon ternyata nah ini kalau teman-teman refresh nasinya naik ya 0123 so kalau mau mulai dari satu bisa sheet1 disini nasinya 12345 Dadi seperti ini ya ini lebih ke bukan penanganan error sih tapi teman-teman semuanya bisa menggunakan three finally ini pada kasus-kasus tertentu Sekarang kita akan bahas tentang cara membuat class error secara manual walaupun javascript itu sudah memiliki standar kelas error namun alangkah baiknya kita membedakan tiap jenis error jadi jangan dipukul rata ya semuanya harus pakai kelas error tidak seperti itu Nah untuk membuat error sendiri itu ya secara manual kita cukup ya itu mudah sekali caranya cukup membuat class turunan dari class error jadi seperti itu eh karena er Itu adalah sebuah kelasnya teman-teman bisa bikin juga kelas turunan dari class error tersebut dan jangan lupa tambahkan parameter meses Kenapa karena agar bisa dikirim nanti ke parameter kontraktor ikhlas error karena dikelas error itu dia memiliki kontraktor ya dan kontraktornya bisa menerima message teman-teman kalau mau mengirim SMS ke kontraktor class Hero teman-teman Bisa kirim menggunakan super kontraktor Oke coba seperti ini kita akan bikin ya nama kelasnya adalah validation error ya di sini kita extend error lalu untuk kali desainer kita tambahkan kontraktor di sini ada dua parameter-parameter pertama adalah meses dan parameter kedua adalah fieldnya dan selanjutnya untuk meses saya kirimkan ke super kontraktor punya error ya jadi menggunakan super nah disini harapannya nanti field yang ada di error ini akan di isi ya isi meses nya kita selanjutnya saya tambahkan properties File atau file-file gitu ya sama dengan film yang ada di sini kita akan coba buat saya close dulu ini saya akan bebas ya dari yang error handling disini jadi disini error class.she buatnya ya jadi kita buat nama kelasnya adalah validation error ya teman-teman saya gunakan extensi error nah seperti ini aja dan selanjutnya disini teman-teman bisa tambahkan kontraktor contoh disini kontraktornya parameternya ada message dan juga field errornya kira-kira nanti apa gitu ya lalu teman-teman Bisa kirimkan Mas nya ke super kontraktor ya selanjutnya this titik field sama dengan kita ambil dari field yang ada di parameter kontraktor Jadi cukup seperti ini aja kalau teman-teman mau bikin kelas error gitu ya nanti seperti ini Jadi biasanya Clash Royale kita buat sesuai dengan kebutuhannya coba ini untuk validation error ya teman-teman bikin kelas validation error cotton misalnya bikin database error gitu ya Ya Bikin nanti kelasnya database error FPI error ya error Kenya jadi usahakan SIM berbeda-beda jangan dipukul rata satu semuanya ya jenis-jenis kolesterolnya Oke selanjutnya Gimana cara menggunakannya cara menggunakannya sama ya menggunakan class error Biasanya jadi tinggal throw new validation error kalau sebelumnya kita bikin you obyeknya dari class errornya sekarang kita pakai nya langsung dari validation error yang sebelumnya sudah kita buat jadi disini bisa kita update lagi ya Jadi kita Trunyan new error ini kita ganti menjadi validation error nah seperti ini ya ini sudah kita tangkap ya di sini yang kode yang sebelumnya ke ini saya hapus dulu kalau kita coba raning hasilnya sama saja sebenarnya Nah Lihat terjadi error ya total parameter lebih dari harus lebih 10 nah jadi seperti ini jadi sama saja lantas Kalau gitu ngapain kita bikin kelas manual gitu ya kalau ternyata cara nangkepnya sama aja nah salah satu kegunaannya adalah kalau kita bikin kelas error secara manual itu kita bisa menyisipkan informasi tambahan contohnya disini teman-teman pengen ngasih tahu field apa yang error nah teman-teman saya tambahkan di sini contohnya Vietnam bersih ini disini di parameter keduanya kita bisa tambahkan numbers Contohnya seperti ini ya kalau kita refresh mungkin di sini nggak kelihatan apa-apa Ya sama aja Kenapa karena memang disini kita cuma manggil message kalau mau teman-teman silahkan Panggil properti yang field kalau pengen tahu errornya Apa contohnya kita bisa update ya trek esnya seperti ini jadi kita cek dulu ya kalau misalnya kalau Sebelumnya kan Sorry disini kalau misalnya Sebelumnya kan kita langsung ini terjadi error message apa Nah disini teman teman bisa cek kalau errornya Instance of validation error nabati disini teman-teman bisa ambil fieldnya apa dan error message nya apa tapi kalau bukan validation error ya Temen temen tinggal print errornya kira-kira apa Jadi bisa juga menggunakan operator in shop untuk mengecek jenis errornya ini kira-kira error Apa jadi disini kita bisa update ya Jadi kita cek kalau errornya Instance of validation error kita mau ngapain Else ya kita biasa aja keluarin errornya Oke kalau di sini tadi keluarnya apa terjadi error di field Oke jadi kita akan konsol info terjadi error default ya Kita akan ambil dari error titik field ya ya habis itu disini dengan error dengan error kita ambil error titik message nah ini jadi karena kita tahu nih errornya itu berubah validation error jadi kita bisa ambil kira-kira apa gitu ya dan meses nya apa ini kalau kita hari presna hasilnya sekarang berubah terjadi error di Vietnam bersih dengan error total parameter harus lebih dari kosong jadi seperti ini kalau teman-teman mau buat kelas error secara manual jadi rekomendasi memang seperti itu teman-teman kalau mau tiap jenis heronya teman-teman silakan bikin kelas error masing-masing Sekarang kita akan bahas tentang iterable dan juga iterator nah perlu di pengertian dulu ya ini adalah material yang lumayan Advanced ya kalau teman-teman misalnya agak sedikit Bingung enggak masalah nanti tinggal bisa diskip dulu aja ya nanti kalau udah lebih familiar mungkin atau rubah lebih mengerti gitu ya bisa balik lagi ke materi ini karena materi ini lumayan Advance dan mungkin memang jarang sekali diimplementasikan secara mualaf kebanyakan kita sudah menggunakan fitur yang sudah adanya di javascript Oke jadi salah satu fitur terbaru di dalam ecmascript versi 6 adalah namanya iterable iterable adalah spesial objek yang memiliki standarisasi dimana dengan mengikuti standarisasi table secara otomatis kita bisa melakukan iterasi terhadap data tersebut menggunakan perulangan for of eh jadi apapun ya dalam spesifikasi ecmascript versi 6 apapun yang bisa di teras yg menggunakan operasi perulangan for of itu harus mengikuti standar iterator sore treble ya contohnya sebenarnya saat kita menggunakan Arai menggunakan objek dan yang lain-lain yang ada di dalam javascript itu banyak banget ya nanti kita bahas di bagian yang javascript standar proses itu sebenarnya banyak sekali yang sudah implementasi treble ya Nah sekarang pertanyaannya gimana spesifikasi treble dan kau kita pengen bikin sebuah objek yang mengikuti standarisasi sih treble ini Oke jadi ini adalah kontraksi treble jadi standarisasi treble ini Kebetulan dalam bahasa pemograman typescript ya karena tidak ada kontrak sebenarnya kalau javascript karena Dynamic jadi ini adanya dalam bentuk typescript nah Jadi intinya nanti teman-teman kalau misalnya mau bikin sebuah iterable teman-teman Ya silahkan bikin kelas ya jadi c-nya adalah kontrak interface itu anggap aja sebagai kontrak-kontrak iterable jadi dimana Nah teman-teman nanti harus bikin sebuah function dimana nama panggilannya seperti ini kurung kotak simbol titik iterator ya kurung kotak nah ini tidak ada parameter ininya methodnya lalu dia balikannya adalah sebuah kontrak namanya iterator teh ini apa Teh ini adalah data jenis seperti itu Jadi ini kalau teman-teman mau bikin iterable seperti ini jadi teman-teman harus bikin sebuah Indonesia yang menggunakan kurung kotak simbol dot rathor ya kurung kotak dan disini tidak ada parameter dan return value nya atau pengembaliannya harus kontrak iterator karena pertanyaannya Bagaimana dengan kontrak iterator untuk kontraksi teratur seperti ini jadi disini kontrak iterator ya jadi sesuai ini lumayan Kompleks kalau diperhatikan tapi saya jelaskan SS Coba jelaskan secara sederhana Jadi intinya itu disini adalah yang salah teman-teman bikin sebuah iterator kelas iterator misalnya nanti teman-teman yang wajib Sebenarnya ada sebuah metode yang namanya next ya metode ini next disini teman-teman bisa menambahkan argumen atau tidak Tapi nanti balikannya dia adalah iterator Resort seperti itu eh dan nitratory saat nanti ada kontraknya lagi jadi memang ini lumayan Advanced saya bilang jadi sekarang kita udah harus bikinnya eh implementasi kontraksi treble habis itu kita implementasi kontrak iterator dan selanjutnya teman-teman harus implementasi kontrak iterator Resort iterator itu seperti apa kontraknya nah kurang lebih seperti ini jadi iterator riset itu ya itu bisa iterator You're dressed atau iterator read only short untuk iterator You're dressed itu teman-teman kontraknya seperti ini ya teman-teman harus mengembalikan sebuah objek ya dimana dia itu memiliki properti 2 dan dan juga value dan itu Bulian kalau misalnya Fals artinya iterasinya berhenti ya perulangannya berhenti dan ini value-nya Bati teman-teman boleh kosongkan tapi kalau misalnya ngikutin nitratory dan resort kalau dan nya nilainya adalah truk dan value-nya teman-teman harus masukkan Ya sms-nya teman-teman bisa masukkan and Divine juga kalau teman-teman mau tapi intinya kontraknya seperti ini jadi ada tiga hal yang perlu kita buat yang pertama adalah i tremble nya kontraknya seperti ini yang kedua adalah iterator nya kontrakan seperti ini tenang aja ya tanda-tanda Ati ini Memang agak sedikit Kompleks datanya tapi simpelnya disini teman-teman cukup implementasi yang next dan returnnya harus iterator Resort dan untuk iterator Resort juga disini Katanya kayak panjang banget padahal enggak di teman-teman cukup bikin objek ya dimana returnnya harus ada obyeknya itu ada dan juga value dan nya adalah Bulian ya bisa tuh bisa Force kalau misalnya Force tidak perlu wajib ada value-nya kalau Troya Silahkan masukkan value hasilnya jadi seperti ini Oke ini kalian kayak Kompleks banget nah kita akan coba implementasi ya biar lebih kelihatan lebih sederhana kita akan coba implementasi Nah jadi ini cara kerja treble dan iterator jikalau kita mengikuti kontraksi treble maka objek yang kita buat akan bisa dilakukan iterasi menggunakan perulangan for of jadi setiap kita melakukan perulangan objek iterator akan dibuat jadi ketika temen-temen melakukan for of gitu ya Nah ini akan dipanggil heater ini akan dipanggil jadi yang method ini akan dipanggil dari si obyeknya sebenarnya jadi dia akan bikin ini lalu ya setiap kali teman-teman ngelakuin iterasi maka yang next ini akan dipanggil jadi next next next next terus sampai next yaitu ya dan nyari tanya Fals sorry ini eh sorry kebalik ya tadi saya harusnya dan nya terus Sorry kalau dan nyetrum Berarti udah selesai terasinya kalau dan nafas berarti belum selesai tasnya Sorry tadi saya kebalik ya jadi harusnya yang kalau misalnya dan nya phosphate belum selesai perulangannya dan teman-teman butuh mengembalikan value Ya tapi kalau truk berarti teman-teman tidak butuh mengembalikan value lagi jadi seperti itu Jadi ini perulangannya akan memanggil next next next dan seterusnya sampai nextnya ininya dan nya menjadi truk Oke kita akan coba ya kita akan bikin sebuah kelas counter ya dimana counternya kita net minimalnya berapa dan maksimalnya berapa nanti kita Kalau kami terasi sampai mendekati counter maksimalnya ya Jadi kita akan coba buat tapi mengikuti kontraksi iterable dan iterator dan iterator resort Nah sekarang kita akan membuat dulu dari yang paling ujung yaitu sih counter iterator Resort kita akan praktek langsung kisah close dulu ini ini saya akan buat nama file-nya iterable iterator ya Jadi kita akan bikin kelas namanya kaunter ya iterator Resort oke di sini kan kita sudah tahu ya kalau untuk iterator is out itu kontraknya seperti ini dia teman-teman perlu ada dua properti dan dan juga value ya dan itu boleh andante di itu ya tinggal videonya Apa jadi disini kita juga bisa bikin kontrak ya dengan dua value di sini ada videonya dan di sini ada dan nya he he di kontraktor di sini ada value-nya dandannya lalu kita Set this value sama dengan value this titik dan sama dengan dan jadi sesimpel ini kalau teman-teman bikin atau ingin mengikuti kontrak counter iterator Resort key selanjutnya kita akan implementasi kontrak yang iterator nya.nah untuk detailnya seperti ini ya kita akan bikin jadi kita bikin Kalau yang ini kan kontrol ritual atau Resort nah ini counter iterator nah di mana teman-teman perlu implementasi next sebenarnya gimana next sini harus mengembalikan return value yang iterator Resort dimana kita semuanya sudah bikin nitratory shop nah Disini saya akan melakukan perulangan dari pertama sampai terakhir dimana yang pertama saya akan mulai dari ini value jadi di sini ada value startnya dan di sini ada maksudnya Ya maksudnya Wah disini value-nya jadi kita akan bikin disini mengikuti kontraknya jadi kita akan bikin kelas counter iterator ya lalu di sini kita bikin kontraktor kira-kira value awalnya berapa lalu maksudnya berapa lalu this value sama dengan value dishmaxx sama dengan makna sampai sini kita belum bikin kontrak yang iterator ya Nah sekarang kita akan bikin kontraknya nah ngikutin kontraknya itu cukup kita implementasi yang next sini ya yang next Oke jadi disini cukup kita implementasi next ya Nah next ini kita perlu mengembalikan nitratory self Nah jadi kita bisa pakai yang iterator Resort ini nah disini teman teman bisa cek aja sih kalau misalnya value-nya misalnya ya lebih dari Max batikan udah selesai ya malah kita akan balikan counter iterator Resort value-nya apa tapi di sini dan nyatru ya berhenti perulangannya jadi bisa seperti itu Nah selanjutnya kalau belum belum mencapai maksimal kita akan kiri eh balikan counter iterator Resort value-nya sama pakai veedu ini Lalu di sini kita bilang dan nya Fals Nah setelah kita mengembalikan biar sipilnya naik ya karena namanya kaunter naik terus Nah kita akan bikin menggunakan Tri finally di dalam finalnya kita akan naikkan counternya jadi seperti itu kece disini kita akan tray finally jadi di final kita seperti biasa this value nya kita naikkan ya satu biar naik terus nanti di sini kita tinggal cek kalau misalnya this value nya lebih dari this titik Max artinya sudah melewati maksimal ya maka kita akan returnnya yang new counter iterator Resort value-nya this titik value dan nya berarti truk ya jadi sudah selesai sudah melewati maksimal nah tapi kalau misalnya bomnya kita balikannya dan nya adalah Porsche jadi seperti ini jadi semudah ini semuanya teman-teman kalau mau bikin kontrak iterator jadi sekarang yang iterator Resort sudah kita buat kontraknya ya Sesuai dengan kontraknya country teratur juga susah sudah kita buat sesuai dengan kontrak iterator yang terakhir Sekarang kita akan bikin ya counternya sesuai dengan kontrak iterable jadi untuk counter jadi teman-teman bisa bikin namanya counter iterable atau counter saja saya disini saya counter saja Lalu kita bikin di sini kontraktornya value dan maksudnya berapa Nah di sini kita perlu mengikuti kontrak yang ada di treble ya Jadi kita perlu bikin method seperti ini metalnya kurung kotak simbol titik iterator kurung kotak bagikannya adalah iterator jadi disini kita bisa bikin seperti ini Kita bikin metode seperti ini sama sesuai dengan kontraksi treble balikannya adalah return new counter itera er value-nya berapa maksimalnya berapa jadi seperti itu kita di sini buat berarti ya Jadi ini bikin class counter seperti ini kita akan bikin kontraktor untuk ngeset value awalnya dan juga Maksudnya berapa this value sama dengan value this mag sama dengan Max lalu kita akan bikin kontrak ya menggunakan simbol titik oke Sorry simbol titik iterator ya Nah seperti ini nama methodnya Memang agak sedikit aneh tapi memang udah harus seperti ini kontraknya dari sini kita tinggal balikan si iterator nya jadi tinggal riten new counter iterator hidrat or ya bukan nitratory short disini value-nya adalah this value dan this titik Max selesai jadi sekarang kita sudah bikin counter yang sesuai enam kontraksi treble kontraktor sesuai dengan kontrak iterator dan counter iterator Resort sesuai dengan kontrak iterator Resort oke sekarang pertanyaannya Gimana cara menggunakannya ya cara menggunakannya simpel teman-teman cukup gunakan menggunakan perulangan for of jadi seperti ini Kita bikin counter ya sama dengan New counter dari 1-10 misalnya Hai teman-teman silakan lakukan perulangan seperti ini terlihat lebih simple banget ya jadi kita bisa menggunakan perulangan for of karena kita sudah implementasi kontrak dari si treble dan iterator kita akan coba Jadi sini tinggal constone tell = new counter value-nya satu maksimalnya 10 lalu teman-teman tinggal gunakan for of Ya seperti ini di sini tinggal value contohnya lalu kita akan kontrol-kontrol titik info value-nya Oke kita akan coba Running Man kau lihat hasilnya hasilnya 1-10 Ya di sini Saya tidak melakukan apapun ya cukup langsung menggunakan perulangan for open anti otomatis dia akan manggil ini dan akan mengembalikan ini lalu dipanggil terus nextnya sampai nilai iterator resourcenya bernilai True dan nya selesainya jadi seperti inilah kontrak dari treble Jadi semuanya tidak ada yang magic ya tiba-tiba Kok bisa kita ngelakuin iterasi mengarai gitu menggunakan for of atau objek menggunakan for of itu sebenarnya karena kelas-kelas portray the juga objek gitu yaitu sudah implementasi ya kontrak dari si iterable ya disini temen temen bisa juga implementasi kontraknya saya ganti centang sampai 20 saya reload Nah ya ini counternya dari 1-20 perulangannya jadi seperti ini implementasi ITB udane terator di javascript buat teman-teman bingung Tidak masalah karena mungkin kita juga bakal jarang implementasi secara manual ya atau sih pakai yang sudah ada Jadi ini adalah I treble dan iterator selesai sudah materi tentang javascript object oriented programming ya jadi saya ucapkan selamat buat teman-teman kalau sudah selesai mengikuti materi javascript object oriented programming ini Nah selanjutnya kira-kira kalau teman-teman masih tertarik ya menjadi javascript developer kira-kira Apalagi nih yang perlu teman-teman kuasai Oke ada masih banyak semuanya materi yang perlu teman-teman kuasai ya biar lebih Advance lagi menguasai javascriptnya jadi naiknya kita akan juga buat course yang namanya javascript standard library ini nanti kita akan bahas standar-standar library yang ada di javascript atau disediakan oleh javascript Karena teman-teman sekarang udah ngerti konsep object oriented programming ya sebenarnya banyak sekali kelas-kelas yang disediakan sama Japan standard library yang sebenarnya teman-teman bahkan tidak perlu buat secara manual Nanti kita akan bahas di materi javascript standard library dan DJ batik modern nanti sudah ada fitur yang namanya javascript moduls jadi teman-teman juga nanti perlu belajar ya javascript modul ini sangat populer sekali kalau teman-teman nanti pengen melanjutkan ke teknologi seperti inojb jadi saat ini noje sudah implementasi javascript moduls tapi tenang aja walaupun teman-teman tidak ingin hanya belajar mau jdi javascript biasa juga yang ada di browser itu sudah support tentang javascript modus jadi nanti kita akan buat Corsa juga lanjutnya khusus untuk diperankan teman-teman nanti juga perlu belajar javascript document object model jadi ini bagaimana teman-teman melakukan manipulasi document object model ya di dalam javascript nanti juga akan dibuatkan kos tentang ya pasti passing atau javascript asyncronus nanti teman-teman akan belajar asyncronus disini seperti Ajax Promise dan yang lain-lain dan antimateri hanya terakhir juga akan dibahas tentang javascript wppi Karena sekarang sekarang sekarang itu banyak banget ya wppi yang ada di javascript ya Jadi ini parkop HTML5 jadi bakal Nanti akan saya buatkan juga course untuk javascript kue pie jadi lumayan masih panjang ya untuk teman-teman menguasai total tentang javascript ini Oke mungkin sekian aja ya materinya waktu mental saya ada pertanyaan atau saran dan kritik atau saran silahkan masukan di kolom komentar Kalau merasa berguna ya atau bermanfaat materi ini silahkan di share ke teman-teman yang lain oke Mungkin akhir kata salam programmer zaman now Bye bye