国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

javascript - 這兩種JS寫法有什么區別

瀏覽:201日期:2023-03-09 15:36:37

問題描述

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 ;}

補充內容:我是在網頁上通過var a=new cs();a.open_change_customer_p ();來使用。然后cs只暴露open_change_customer_p 這個函數上面兩種寫法,是把要暴露的方法掛在新的變量中比較好,還是直接掛在函數名下比較好?

問題解答

回答1:

前面那種我見得比較多,后面那種寫法是什么鬼。。

回答2:

第二種是不是這樣_cs.open_change_customer_p = function (url, url_param){......}

這兩種的區別就是,第二種這種方法可以被刪除,第一種用 var 定義的不能被刪除,除此以外,貌似沒什么區別了,看個人習慣了,第一種可讀性可能會好一點

回答3:

靜態方法為什么不抽出來單獨寫一個函數,而要每次都新建?

回答4:

...第一種用法:var cs1 = cs();var cs2 = cs();cs1 和 cs2 是兩個不同的對象, 指向不同的內存空間而第二種會指向同一個空間,就是cs函數本身...會出現的問題就是你聲明了倆變量,改變其中一個,另外一個的值跟著變(var cs1 = cs()這種用法)

如果你是想var cs1 = new cs()的話, 第二種始終控制的是cs函數本身呀...那里的cs應該換成this

第一種好...因為第二種很奇怪...

回答5:

功能應該都是能實現相同的功能的

第一種看起來會比較舒服

第二種看起來會比較舒服

如果你是覺得第一種那樣定義不太舒服,你可以這樣子定義

function cs() { this.open_change_customer_p = function (url, url_param) {console.log(url);console.log(url_param);block_enter_presss(); };function block_enter_presss() {/**屏蔽bootstrap搜索框按enter會刷新,搜索框響應enter鍵 */ }}console.log(new cs())回答6:

你第二種方法能實現

var a=new cs();cs.open_change_customer_p ();

這樣的調用? 我很懷疑

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 江陵县| 绥中县| 澄江县| 乳山市| 沙坪坝区| 张家港市| 沙洋县| 元朗区| 闽清县| 平定县| 文水县| 双辽市| 宁晋县| 嵩明县| 杭州市| 晋州市| 莫力| 罗江县| 汶上县| 井冈山市| 泰兴市| 宜兴市| 皮山县| 庄河市| 都江堰市| 广西| 漳平市| 商水县| 寿阳县| 翁源县| 岫岩| 都兰县| 乳源| 米易县| 台安县| 武山县| 屏东县| 新兴县| 当涂县| 张掖市| 高青县|