原创 setMonth的小坑

今天在發現一個我之前寫的測試用例出現了錯誤,最後發現是對Date的setMonth方法使用不夠理解,下面進行一下分享。 大家都知道setMoth就是設置Date對象的月份信息的, MDN的示列代碼如下 var event = ne

原创 chrome安裝插件提示image decode failed

今天在安裝chrome插件時,發現插件列表中的所有圖片均無法加載,點擊安裝時,頁面提示image decode failed,在網上搜索了一個方法,成功解決,感覺很神奇,解決方法如下: 刪除C:\Windows\System32\

原创 ESLINT錯誤提示 no-unused-vars

ESLINT錯誤提示 no-unused-vars 使用ESLINT時遇到如下錯誤的提示 查閱資料得知,是需要使用插件 https://github.com/typescript-eslint/typescript-eslint

原创 Functional-Light-JS ---- Recursion

遞歸 遞歸的定義 遞歸的好處 互遞歸 遞歸的弊端 尾調用 遞歸的優化 遞歸的定義 遞歸就是一個函數在其內部調用它自己,同時有一個條件來終止這個遞歸的循環調用。 遞歸的好處 遞歸可以使我們的代碼更加的接近聲明式的代碼,可讀性會更

原创 JS中創建任意長度的填充數組

JS中創建任意長度的填充數組 常見的創建數組的方式就是使用Array(length);這種方式來創建數組,但這樣創建的數組會存在兩個問題, 一是所生成的數組實際上是一個稀疏數組。而由此所帶來的直接問題是,你無法使用map或者for

原创 rgba轉16進制

今天工作中遇到如下需求,需要將rgba的顏色值,轉換爲16進制的顏色值 將rgb轉換爲16進制我們都知道,但是將rgba裝換爲16進制知道的人可能就很少了,經過我查閱資料發現,國內幾乎沒有對於這個轉換的正確解釋,下面我將講解如何進

原创 React + Jest + Enzyme

遇到的小坑 1.在引入測試的組件時,有時候我們的組件是以一個高階的組件的形式導出的,而在我們測試的時候,我們只需要測試這個組件本身,不需要引入這個組件的封裝體進行測試。 比如我們的組件A.js如下 class A exten

原创 eslint提示'React' is defined but never used

使用eslint --init進行基礎的設置後,在React項目中發現如下報錯提示 'React' is defined but never used 在.eslintrc.js文件中配置如下rule即可 "react/jsx-use

原创 absolute 與overflow:hidden常見bug

我們使用第三方的組件時,第三方組件有時會依據我們引入組件的DOM的位置進行定位,很常見的CSS寫法就是使用position:relative和position:absolute進行搭配使用,有時在父容器的外層添加了overflow:h

原创 CSS的padding實現百分比佈局

在我以前的文章中,我講過CSS中的一系列的百分比單位,其中margin和padding是相對於容器的寬度的,最近看到了一個文章,講的是用padding來實現圖片等比例佈局。大概的需求如下,我們需要將圖片按照我們希望的比列進行顯示,圖片

原创 mysql中的union小坑

今天在使用union時,遇到一個小小的坑 業務情景如下,需要從表中查詢出對應數據同時,還需要將當前表的最大id給查詢出來,使用的SQL如下 SELECT id FROM chat_session WHERE `from` =

原创 mysql中數據查重以及重複數據刪除

有時候 業務功能出現了問題,最後發現是數據有問題,此時我們需要進出現問題的數據查詢出來,並根據查詢的結果將重複數據進行處理。 舉一個列子,有如下數據 id from to time workbench_id 1 345

原创 TP下的異常捕獲

在項目中使用了TP框架,想要進行一個SQL更新語句的異常捕獲,使用瞭如下寫法 try{ $res = User::table("chat_session")->insertGetId($arr);

原创 使用localStorage進行頁面間通信

在h5中,新增了localStorage,對應localStorage的有一個storage事件,這個事件可以用來進行頁面間進行通信。 頁面間通信的列子 <!DOCTYPE html> <html lang="en"> <head>

原创 JS正則test的巨坑

今天和同事問了我一個正則的編寫,需求很簡單,就是要匹配一個字符串,字符串的最後一部分是一個括號內包含一個數字,如下 123(2) 寫的正則如下: var b =/^[\d\D]*\([1-9]\)$/g; 然後我在控制檯進行測試,詭異