Javascript sepatutnya menjadi salah satu bahasa merentas platform yang paling popular sekarang Saya telah bermain dengan beberapa perkara menarik di bahagian hadapan, tetapi saya mendapati bahawa saya tidak menguasai bahasa ini dengan baik. Agak membuang masa, jadi saya ingin memanfaatkan masa lapang sekarang untuk menambah beberapa perkara yang hilang.
Ikatan tersirat ini
Ini adalah sesuatu yang mengelirukan saya pada mulanya Apabila saya mula-mula melihatnya, saya tidak memahaminya. Kemudian, dalam situasi yang sama, kaedah yang serupa boleh digunakan untuk menyelesaikan masalah yang sama. Jadi saya cuba menyusun ilmu dan memudahkan pencarian.
Ini adalah ralat reka bentuk dalam bahasa Javascript, tetapi nampaknya ralat ini tidak dapat dielakkan. Fungsi ialah objek, tatasusunan adalah objek, dsb. Memetik contoh daripada "Javascript: The Good Parts"
Hasil jumlah pada masa ini ialah 7.
Apabila memanggil fungsi dalam mod ini, ini terikat kepada pembolehubah global.
Iaitu, dalam persekitaran semasa, kita boleh memanggil ini
seperti ini
};
console.log(user.hello());
Jika kita mentakrifkan pembolehubah dalam kaedah ini dan memberikannya nilai ini, maka fungsi dalaman boleh mengakses ini melalui pembolehubah itu.
var that = this
Jadi apabila keadaan menjadi lebih rumit, kita perlu menggunakan:
1.Skop pembolehubah ini sentiasa ditentukan oleh fungsi lampiran terdekatnya.
2. Gunakan pembolehubah tempatan (seperti saya, diri, itu) untuk menjadikan pengikatan ini tersedia secara dalaman.
Contoh mudah:
var MM = function(){
z = M baharu();
This.name = "MM";
z.printName = function(){
console.log(nama.ini);
};
Kembalikan z.printName();
};
var mm = MM baharu;
Ini akan mengembalikan MM. Di samping itu, dalam ES5 anda boleh menggunakan kaedah ikatan fungsi panggil balik.
Lain-lain
Helo lagi, dunia
Saya menemui cetakan('Hello')('World') secara kebetulan, dan kemudian mengeluarkan 'Hello, World'.
Apa yang dipanggil fungsi pesanan lebih tinggi nampaknya sangat berguna Jika anda berminat, anda boleh membaca artikel seterusnya.