原创 ESLint常用規範

off or 0 - 關閉規則 warn or 1 - 將規則視爲一個警告(不會影響退出碼) error or 2 - 將規則視爲一個錯誤 (退出碼爲1) "no-console": "error",             

原创 nodejs中的EventLoop

┌───────────────────────┐ ┌─>│ timers │<————— 執行 setTimeout()、setInterval() 的回調 │ └──────────┬──

原创 算法題:兩個有序數組合並(最優解)

合併兩個有序數組最優解: 時間複雜度:O(n) 空間複雜度:O(n) // 正向 var mergeSortedArray = function(arr1, arr2) { let m = 0; let n = 0;

原创 什麼是高階函數和純函數?

高階函數是一個接收函數作爲參數或將函數作爲輸出返回的函數。 純函數的三個條件: 給定輸入,無論什麼時候調用,無論調用多少次,輸出總是確定無疑的; 在函數內部不可以改變函數外部對象的狀態; 純函數內部的狀態在純函數執行完畢後就被銷

原创 2020: Vue和React生命週期

Vue 生命週期 vue2有9個生命週期鉤子 vue3也有9個生命週期鉤子 2.x和3.x鉤子的對應關係: beforeCreate -> 使用 setup() created -> 使用 setup() beforeMoun

原创 Pre-commit:如何使用 husky、lint-staged和prettier優化你的項目

在軟件開發過程中,代碼風格檢查(Code Linting)是保障代碼規範和一致性的有效手段。過去,Lint 的工作一般在 Code Review 或者 CI 的時候進行,但這樣會導致問題的反饋鏈,浪費不必要的時間。因此,我們需要

原创 gulp和webpack的區別

基本區別: gulp可以進行js,htm,css,img的壓縮打包,是自動化構建工具,可以將多個js文件或是css壓縮成一個文件,並且可以壓縮爲一行,以此來減少文件體積,加快請求速度和減少請求次數;並且gulp有task自定義處理

原创 深入瞭解Object.freeze()和Object.seal()

目錄Object.freeze()Object.seal()對比Object.freeze()和Object.seal()拓展Object.preventExtensions() Object.freeze() 官方MDN對Obj

原创 遺傳算法 一個模擬自然進化過程的啓發式搜索算法

關鍵字:遺傳算法 遺傳算法(Genetic Algorithm)是一種模擬自然界“自然選擇”和“自然遺傳”的啓發式搜索算法,通過模擬自然進化過程搜索最優解的方法。 直到1989年,實現了具有單變量函數的簡單遺傳算法(Simpl

原创 如何寫出高效的 Vue 代碼

開講之前我先簡單的自我介紹一下,本人自喻:flitrue,工作三年有餘,在一家不知名的互聯網企業擔任前端架構師之職。 技術選型問題 近幾年前端發展快速,很多同學抱怨學不動了,要回家餵豬。面對前端技術海量的“輪子”,我們犯了“選

原创 PHP八大設計模式

PHP命名空間 可以更好地組織代碼,與Java中的包類似。 Test1.php <?php namespace Test1;//命名空間Test1 function test(){ echo __FILE__; } T

原创 GitLab使用手冊

安裝Git 安裝環境:windows 下載地址:git官方網站 安裝包:64位 安裝過程:傻瓜式安裝 至此安裝完畢 生成私鑰和公鑰 ssh-keygen -t rsa -C "wangpingping@wordemotion

原创 設置centos的YUM源爲國內阿里雲源

阿里雲Linux安裝鏡像源地址: http://mirrors.aliyun.com/ http://mirrors.aliyun.com/repo/ CentOS系統更換軟件安裝源 第一步:備份你的原鏡像文件,以免出錯

原创 PHP四大基本排序算法

冒泡排序 思路分析:在要排序的一組數中,對當前還未排好的序列,從前往後對相鄰的兩個數依次進行比較和調整,讓較大的數往下沉,較小的往上冒。即,每當兩相鄰的數比較後發現它們的排序與排序要求相反時,就將它們互換。 $arr=array(