新思路解決問題

今天遇到兩個問題,可能是因爲最近看小說或者玩遊戲時間長,耽擱了兩個月的學習。腦子不好使了,臥槽。

第一個問題,一個頁面comm_rate被默認爲0,但是行方要求comm_rate應該有值,最低爲0.2。因爲comm_rate

是隨着欄位maturity_dt被計算賦值。所以以前考慮0是因爲是maturity_dt欄位爲空,所以comm_rate沒值。

我的解決方案,很lou, 直接這樣寫

 if(document.MAINFORM.maturity.value){
     document.comm_rate.value=0.2;
}
粗心了,仔細看,條件被我搞錯了,這下所有的comm_rate都是0.2了,應該加個 ' ! ',醜,醜,醜!就算加上! 後也

是不對的,因爲這個計算是根據表格中的mini_period,以前寫值被我默認改成0。因爲這個comm_rate比較特殊每個季度收

費,所以要mini_period賦值爲1;

第二個問題,算是有點技術的,comm_rate被賦值計算了,因爲頁面這個現實沒必要計算。

1、我首先去當前頁面JS查找comm_rate被賦值的計算,這個沒有;

然後去這個業務的上層模組JS中查,發現也沒有計算comm_rate;

最後我去系統JS中查找comm_rate計算,找到了幾個。可以確定是這裏的JS被調用了計算。涉及comm_rate的計算

函數,見鬼了!竟然在頁面JS找不到被調用的情況。絕對是系統JS函數裏嵌套了,然後被當前頁面調用計算。

2、好了,我用另一個思路,去查這個comm_rate是不是前手計算被賦值了,然後通過幾個做過的賬號對比,發現上一步的

comm_rate有的沒有值,值是0.2 || 1.0 || 0.125,到了這一步的值基本上都是1.25或者0.5。所以可以確定絕對是當前頁面

函數調用。

到這一步,沒解決問題,一臉懵逼,只好繼續排查系統JS被調用的情況,發現5個涉及comm_rate計算的函數,只有a

函數(化名)被其他函數調用,但是a卻沒被頁面JS中調用過。

再回到頁面JS中排查系統函數,發現有三處吊用過系統JS,上面說的5個涉及comm_rate計算的函數都沒被調用過,沒法

搞了。這下到死局了!

今天的收穫就是:新思路,我可以試着對頁面的兩個系統JS函數分別進行註釋,查看comm_rate的情況。這樣就可以發現是

哪裏的問題。感謝我的組長楊靜,真是做了多年的老師傅,經驗真是強。自己花了兩個小時沒找到問題,不如別人十分鐘搞定問題。

我要端正好心態,以後爭取多多學習,少玩遊戲,少看小說,多動動腦子!

有時解決不了問題,追溯不到原因,可以跳出來,直接試着把可能出現的代碼進行註釋調試下,說不定有驚喜!事半功倍



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章