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

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

javascript - 方法要用到一個外部的數據 那么是優先選擇當成參數傳過去 還是把數據存成相對當前作用域來說全局的變量~

瀏覽:148日期:2023-02-25 11:00:06

問題描述

var test = { init: function () {var data = $rootScope.test;if(data) { …… this.method(data);} },method: function (data) {console.log(data); }};

還是

var test = { data: $rootScope.test,init: function () {if(this.data) { …… this.method();} },method: function () {console.log(this.data); }};

哪種方式是最佳實踐

如果第一種方式要傳遞的層級過多怎么辦 比如開始是 init 調 method 傳過去 之后有 method[n] 種 執行順序是 init -> method -> method2 -> method3 這樣的 要一級一級傳嗎……

還有就是兩種方法那種性能高些呢 第二種每次取值都相當于取對象的屬性 表象上直接傳參性能會跟憂些?~

問題解答

回答1:

傳遞,全局變量少用

回答2:

你的例子里不算全局變量!

掛在對象的屬性上,不會影響到方法內部變量的使用!也不會污染作用域!

回答3:

你這里實現的不是全局變量,只是掛在到了對象的屬性上,還有這里何必要申明一個變量呢,并沒有看到你實際操作這個data,如果只是想引用一下值得話,那么直接用$rootScope.test不就好了?

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 定兴县| 成都市| 中宁县| 浦城县| 长春市| 三明市| 平果县| 东海县| 娱乐| 黎城县| 正宁县| 方城县| 普陀区| 佛学| 夏邑县| 江孜县| 邮箱| 黔南| 五台县| 新郑市| 曲松县| 鄢陵县| 子长县| 偃师市| 龙游县| 建昌县| 忻州市| 赤峰市| 施秉县| 滨州市| 任丘市| 武隆县| 清水河县| 蒙城县| 恩平市| 瑞昌市| 浦江县| 潜山县| 盐亭县| 长春市| 竹溪县|