一、靜態變數踩坑記錄
問題:專案裡有乙個模板匹配模組,有兩個對外介面,乙個模糊匹配和乙個精確匹配,模糊匹配採用預設值,精確匹配比模糊匹配多了乙個賦值操作,所以精確匹配賦值後會呼叫模糊匹配,由於模板生成類和模板匹配邏輯拆分為兩個類,但是不想重新定義變數並賦值,於是需要資料共享,其中乙個類使用了靜態變數來共享資料,但是通過測試發現在呼叫精確匹配後再呼叫模糊匹配模糊匹配的結果和上一次精確匹配的結果一樣。
解決:debug除錯發現在呼叫精確匹配後把靜態變數的值改變了沒有恢復預設值,因此需要在呼叫完精確匹配後重新賦值,但是在什麼地方賦值呢,經過分析需要在呼叫前,也就是剛進入模糊匹配方法時賦值,並且需要判斷本次呼叫是模糊匹配還是精確匹配,是模糊匹配才需要重新賦值,那麼根據什麼判斷本次呼叫是模糊匹配還是精確匹配呢?想到乙個很簡單的方法:由於模糊匹配和精確匹配傳過來的引數個數不同,因此根據這個來判斷,至此問題解決。
二、vue中number型別判斷相等踩坑記錄
問題:console.log('result: '+n==1);輸出為false; console.log(typeof(n));輸出為number,始終想不明白為什麼是false。
解決:開始以為是number型別的問題,可是在控制台執行命令var n=1;console.log(n==1)返回為true,然後恍然大悟可能是n==1前面的字串'result: '問題,果然去掉之後返回結果為true,另外也可以用括號括起來,如console.log('result: '+(n==1))結果就是result: true。
三、vue中watch和computed的原理和使用
今日小結 4 29
1.布局layout是盛放檢視view的容器 再說一遍,檢視view是放在layout布局中的!通過改變布局大小來改變檢視大小 布局layout的引數一般是大小,位置,內容 內部檢視控制項 的排列方式 水平,垂直等 所以在檢視控制項 比如button 的設定中,關於layout 的都是布局的引數,比...
今日小結 4 24
1.list介面的常用子類 1 arraylist 子類 陣列list 2 linklist 子類,實現queue介面 鍊錶list 2.引用型別和原始資料型別 int 是原始型別 integer 是引用型別,是int的封裝類 為什麼要進行封裝呢?因為封裝成類就會有各種方法,方便進行型別轉換,資料處...
今日小結 4 8
1.昨天我讓recyclerview顯示sd卡上的 非常卡,卡到程式閃退,可能是sd卡上的 資料量大,直接載入比較慢,同時載入多張可能就會oom out of memory 比較好的解決方案是先把快取到記憶體上,然後動態載入,只載入要顯示的 因為記憶體資源訪問速度快,且動態載入 消耗記憶體小。訪問網...