原创 閉包全面詳解

什麼是閉包 最原始定義 閉包(closure),是指函數變量可以保存在函數作用域內,因此看起來是函數將變量“包裹”了起來。 //根據定義,包含變量的函數就是閉包 function foo() { var a = 0; } cosol

原创 Arraybuffer,Blob,Base64編碼

ArrayBuffer ArrayBuffer對象表示原始的二進制數據緩衝區,即在內存中分配指定大小的二進制緩衝區(容器),用於存儲各種類型化數組的數據,是最基礎的原始數據容器,無法直接讀取或寫入, 需要通過具體視圖來讀取或寫入,即Type

原创 深入前端-JavaScript異步編程

JavaScript的執行機制在上篇文章中進行了深入的探討,那麼既然是一門單線程語言,如何進行良好體驗的異步編程呢 回調函數Callbacks 當程序跑起來時,一般情況下,應用程序(application program)會時常通過API調

原创 JavaScript-作用域-執行上下文-變量對象-作用域鏈

作用域 作用域就是變量與函數的可訪問範圍,即作用域控制着變量與函數的可見性和生命週期。在 JavaScript 中,變量的作用域有全局作用域和局部作用域兩種。JavaScript 採用詞法作用域(lexical scoping),也就是靜態

原创 深入前端-徹底搞懂JS的運行機制

最近看了很多關於JS運行機制的文章,每篇都獲益匪淺,但各有不同,所以在這裏對這幾篇文章裏說的很精闢的地方做一個總結,參考文章鏈接見最後。本文博客地址 瞭解進程和線程 進程是應用程序的執行實例,每一個進程都是由私有的虛擬地址空間、代碼、數

原创 JS事件冒泡與捕獲

事件冒泡與事件捕獲 事件冒泡和事件捕獲分別由微軟和網景公司提出,這兩個概念都是爲了解決頁面中事件流(事件發生順序)的問題。 如下:假設三層div都有事件監聽,這時我們點擊的小的藍方框,事件執行的順序是怎麼樣的呢 <div id="s1" s

原创 深入前端-徹底搞懂瀏覽器運行機制

瀏覽器是多進程的 Browser進程: 瀏覽器的主進程(負責協調、主控),只有一個。 負責瀏覽器界面顯示,與用戶交互。如前進,後退等 負責各個頁面的管理,創建和銷燬其他進程 將Renderer進程得到的內存中的Bitmap,繪製到用戶界面

原创 基於Node.js和node-xlsx開發一個Excel組件

簡述需求 我們在用Excel表格的時候經常需要合併數據,比如統計整個年級的數據的時候,需要合併每個班成績的時候,這就需要一個快速將很多張數據類型相同表合併的組件 需要的配置 現在Node.js能夠很好進行文件的讀寫操作,只要能讀寫就能合

原创 JavaScript運用正則

exec()和match()區別 當採用非全局匹配的時候,兩個方法的返回值完全一樣。 match和exec都只匹配一次,且都會把分組抽出來放到數組後面 (function(){ let str=

原创 JS動態解析瀏覽器和網頁的各種寬高屬性

獲得各種寬高的屬性還有公式 body { padding: 50px; height: 500px; border: 1px dotted red; overflow:

原创 React+Node+Express搭建一個前後端demo

1.簡述 demo:以前用過原生JS寫計算器,這裏我想要react來寫,並且用數據庫記錄每次計算公式和結果,並且可發請求獲取 後臺部分:建立數據庫後,通過Node.js的express框架寫接口操作數據庫 前端頁面:通過react的rou

原创 匿名函數以及閉包內部this指向(函數調用模式的問題)

網上看到一句話,匿名函數的執行是具有全局性的,那怎麼具有的全局性呢?閉包內部this的指向是window,爲什麼指向了window呢?下面通過js函數調用模式和部分案例分析了爲什麼確實如此 1.js函數調用的模式 1.方法調用模式和函數調用

原创 瀏覽器內核

1.什麼是內核,及瀏覽器作用 瀏覽器的主要功能就是向服務器發出請求,在瀏覽器窗口中展示您選擇的網絡資源。這裏所說的資源一般是指 HTML 文檔,也可以是 PDF、圖片或其他的類型。資源的位置由用戶使用 URI(統一資源標示符)指定。瀏覽器解

原创 JS匿名函數內部this指向

網上看到一句話,匿名函數的執行是具有全局性的,那怎麼具有的全局性呢?this的指向在函數定義的時候是確定不了的,只有函數執行的時候才能確定this到底指向誰,實際上this的最終指向的是那個調用它的對象 1.案例中,第一個say打出來的是A

原创 BFC:塊級格式上下文詳解

1.BFC簡要定義 BFC(Block formatting context)直譯爲"塊級格式化上下文"。它是一個獨立的渲染區域,它規定了內部如何佈局,是決定塊盒子的佈局及浮動相互影響範圍的一個區域,並且與這個區域外部毫不相干。 2.BFC