原创 Webpack之不同模式的區分打包

文章目錄引入初步的區分打包更進一步的區分打包 引入 Webpack針對development和production兩種模式各自有一些默認的配置,以及個人設置的一些配置。 例如在開發環境中,我們通常會使用devServer搭配HMR

原创 React源碼閱讀--React.createElement和ReactElement

文章目錄React.createElement源碼ReactElement React.createElement 在React中,JSX語法糖都會被轉換爲React.createElement的形式。 例如: <div id='

原创 React源碼閱讀—React.Children.map

文章目錄React.Children.map源碼閱讀React.jsReactChildren.jsmapChildren()mapIntoWithKeyPrefixInternal()getPooledTraverseConte

原创 React源碼閱讀—React.createRef

文章目錄ref的用法源碼 ref的用法 在使用React的開發過程中,我們經常會需要獲取掛載到網頁上的DOM節點,爲它綁定事件或者是獲取它的值(value)。那麼這個時候我們就需要用到ref了。 ref的用法有三種: 第一種是傳

原创 JSX到JavaScript的轉換

可能初次接觸React的人會驚訝於爲什麼可以在JS文件中寫HTML的語句,例如return <div>hello</div>。 其實這種語法就是JSX,它實際上是一種語法糖。我們想“All-in-JS”,但是無奈HTML那樣的標籤

原创 React源碼閱讀—React.forwardRef

文章目錄React.forwardRef源碼 React.forwardRef 在有些時候我們想要操作子組件中的DOM節點,說到獲取DOM節點,可能我們會第一時間想到ref。可是,如果我們是直接在子組件上寫ref,獲得的只是子組件

原创 react-redux入門

文章目錄概念ProviderconnectmapStateToProps參數stateownProps返回值mapDispatchToProps 概念 React-Redux是Redux的官方React綁定庫。它能夠使你的Reac

原创 Redux入門

文章目錄概念工作流程ActionReducerstorestore的創建 概念 React作爲一個視圖層框架,天然是不適合用來管理數據的。因爲React框架中,父子組件的通信通過props(父向子傳遞),或者是回調函數(子向父傳遞

原创 數據結構--折半插入排序

所謂折半插入排序,可以理解爲折半查找與直接插入排序的結合。直接插入排序需要待排序數字與有序數組逐個比較。而折半查找則可以減少比較的次數,從而較快的得到待排序數字應處的位置。 function binaryInsSort(arr){

原创 React的PropTypes和DefaultProps

文章目錄propTypesPropTypes的驗證器基本的JS類型任何可以被渲染的元素react元素某個類的實例枚舉類型指定多個類型指定某個類型的數組指定類型爲對象且對象的屬性是特定類型指定類型爲對象且規定哪些屬性必須有,哪些可以

原创 數據結構--冒泡排序

文章目錄概念算法思想代碼實現 概念 冒泡排序是一種交換排序。即兩兩比較待排序的關鍵字,並交換不滿足次序要求的那對數,直到整個表都滿足次序要求爲止。 算法思想 兩兩比較序列中數字,若兩者中前者比後者大,則交換兩者位置。 那麼這樣做的

原创 虛擬DOM爲何出現以及性能問題

傳統的前端編程方式是命令式編程,即直接操縱DOM,告訴瀏覽器該怎麼幹。這樣的問題就是,大量的代碼被用於操作DOM元素,且代碼可讀性差,可維護性低。 而React、Vue這些數據驅動的前端框架的出現,將命令式編程變爲了函數式編程,從

原创 數據結構--希爾排序

文章目錄概念算法步驟代碼實現 概念 希爾排序,也稱遞減增量排序算法,是插入排序的一種更高效的改進版本。但希爾排序是非穩定排序算法。 希爾排序是基於插入排序的以下兩點性質而提出改進方法的: 插入排序在對幾乎已經排好序的數據操作時,

原创 數據結構--直接插入排序

直接插入排序 概念 插入排序的基本思想是:在一個已排好序的記錄子集的基礎上,每一步將下一個待排序的記錄有序地插入到已排好序的記錄子集中,直到將所有待排記錄全部插入爲止。 插入類排序的整個過程就如同打撲克的理牌過程類似,拿到一張牌然

原创 散列(Hash)表

文章目錄概念定義構造散列函數的方法。直接定址法數字分析法平方取中法摺疊法除留餘數法隨機數法處理衝突的方法開放定址法線性探測再散列平方探測再散列例子鏈地址法散列表的查找散列表的性能 概念 靜態查找表和動態查找樹表的共同特點是記錄在表