function cs() { var _cs = {}; _cs .open_change_customer_p = function (url, url_param) { console.log(url); console.log(url_param); //do something ... ... block_enter_presss(); }; function block_enter_presss() { /**屏蔽bootstrap搜索框按enter会刷新,搜索框响应enter键 */ } return _cs ; }
function cs() { cs .open_change_customer_p = function (url, url_param) { console.log(url); console.log(url_param); //do something ... ... block_enter_presss(); }; function block_enter_presss() { /**屏蔽bootstrap搜索框按enter会刷新,搜索框响应enter键 */ } return cs ; }
Kandungan tambahan:
Saya menggunakan
var a=new cs();
a.open_change_customer_p ();
pada halaman web.
Kemudian cs hanya mendedahkan fungsi open_change_customer_p
Dalam dua cara penulisan di atas, adakah lebih baik untuk menggantung kaedah untuk didedahkan dalam pembolehubah baharu, atau menggantungnya terus di bawah nama fungsi?
Saya lebih kerap melihat yang pertama, tetapi apakah yang terakhir? .
Adakah yang kedua seperti ini
_cs.open_change_customer_p = function (url, url_param){......}
Perbezaan antara keduanya ialah kaedah kedua boleh dipadamkan, dan kaedah pertama yang ditakrifkan dengan var tidak boleh dipadamkan Selain itu, nampaknya tiada perbezaan Bergantung pada tabiat peribadi, kebolehbacaan kaedah pertama mungkin Ia akan menjadi lebih baik
Mengapa tidak mengekstrak kaedah statik dan menulis fungsi yang berasingan, tetapi mencipta yang baharu setiap kali?
...Penggunaan pertama:
var cs1 = cs();
var cs2 = cs();
cs1 dan cs2 ialah dua objek berbeza, menunjuk ke ruang memori yang berbeza
Dan yang kedua akan menghala ke ruang yang sama ialah fungsi cs itu sendiri...
Masalah yang timbul ialah jika anda mengisytiharkan dua pembolehubah, jika anda menukar salah satu daripadanya, nilai yang lain akan berubah dengan sewajarnya (var cs1 = cs() penggunaan)
Jika anda mahu var cs1 = new cs(), jenis kedua sentiasa mengawal fungsi cs itu sendiri... Cs di sana harus diganti dengan ini
Yang pertama bagus...sebab yang kedua pelik...
Semua fungsi sepatutnya dapat mencapai fungsi yang sama
Yang pertama nampak lebih selesa
Yang kedua nampak lebih selesa
Jika anda rasa tidak selesa dengan definisi pertama, anda boleh menentukannya seperti ini
Kaedah kedua anda boleh dicapai
Panggilan sedemikian? Saya meraguinya