原创 JS設計模式——等待者模式

等待者模式 作用:通過對多個異步進程對監聽,對未來事件進行統一管理。在es6、7的promise等異步處理方法沒有出現前,常用等待着模式對異步事件進行管理。 function Waiter() { // 相當於私有變量,因爲n

原创 JS設計模式——MVC模式

MVC MCV是前端框架中常見的一種設計模式,它將頁面變化的邏輯分爲視圖層view、控制層controller、數據層model,三者間的邏輯關係如下: 實現一個簡單的MVC // MVC var MVC = {} // 數據層

原创 JS設計模式——鏈模式

鏈模式 promise就是一個典型的鏈模式,每次調用都返回this用於下一次調用自身的方法。 function Person() { this.run = function() { console.log('runni

原创 JS設計模式——封裝對象、繼承、多態

面向對象 面向對象注重於抽象事物,主要實現封裝、繼承和多態,JS通過函數和原型(es5)模擬了傳統面向對象編程中類的概念實現了面向對象的編程模式,es6中的class實現了面向對象。 多態:不同對象調用相同方法產生不同結果

原创 HTML表單form與表單驗證

MDN表單指南(詳細參考) <input>是內聯塊狀元素,既可以和其他元素放在同一行(內聯),也可以設置寬高等屬性(塊狀) <form>標籤用於爲用戶輸入創建HTML表單 <form method="post"(規定如何發送表單

原创 圖形可視化與Web圖像技術介紹

一、SVG:可伸縮的矢量圖形(聲明式方法:保留模式圖形繪製) SVG 本身是基於 XML 的一種獨立的數據格式,用於聲明式的 2D 矢量圖形。但是,它也可以嵌入到 HTML 文檔中,這是所有主流瀏覽器都支持的。 使用 SVG 繪製

原创 前端筆試面試題目整理(持續更新)

一、JS 1.前端開發面試題(應屆生)-- js基礎算法題 2.VK的秋招前端奇遇記(一) 3.VK的秋招前端奇遇記(二) 4.送你 43 道 JS 面試題 送你58道JavaScript面試題 28 道 JavaScript 面

原创 組件化設計思維

組件是經過設計元素解耦,具有標準規範和可複用場景的基本模塊。“組”是設計元素的組合方式,“件”由不同的元件組成。 一、組件化設計思維 (1)傳統的頁面生產流程 傳統的頁面生產流程是瀑布式的,從運營到需求,需求到設計、設計到前端,是

原创 webpack與vue的使用

一、建好文件目錄 二、npm init 初始化項目 生成package.json 還可以使用 npm init -y 其中-y 是yes的意思,在init時省去了敲回車的步驟 注意:npm i 是安裝包的命令,會根據你的命令行後

原创 JSON與異步加載

1.前後端數據傳輸——JSON 本來用XML傳輸數據 <student> <name>deng</name> <age>40</age> </student> 數據庫的基礎格式也是XML 現在改爲對象的形式,即JSO

原创 算法心得——動態規劃

貪心、分治、動態規劃的區別 從一道經典題說明:力扣42:連續子數組的最大和 // 貪心 var maxSubArray = function(nums) { const len = nums.length; let

原创 js中數組和字符串常用api總結

一、數組Array 1. Array構造函數方法 Array.from 常用指數:兩顆星 從類似數組或迭代器對象中構造函數,包括dom元素數組、集合Set、字典Map、arguments等等。 2. 原地修改數組方法 這些方法

原创 學習JS第四節——作用域、閉包、立即執行函數

1.函數的隱式屬性 [[scope]]:就是常說的作用域,其中存儲了運行期上下文的集合 作用域鏈:[[scope]]中所存儲的執行期上下文對象的集合,這個集合呈鏈式鏈接,將這種鏈式鏈接叫做作用域鏈。 每個JavaScript

原创 數據結構——二叉堆和優先隊列

一、概念 隊列和堆都是一種數據結構,優先隊列是用二叉堆實現的。優先隊列和堆常用語輔助實現其它算法,例如數據壓縮赫夫曼編碼算法、Dijkstra最短路徑算法、Prim最短生成樹算法,優先隊列還可以實現事件模擬、選擇問題,操作系統的線

原创 算法心得——排序

簡單排序 主要操作:比較兩個數據項、交換兩個數據項或複製其中一項,具體操作要看排序的類型。 1.冒泡排序 運行效率較低, 但是在概念上它是排序算法中最簡單的,最適合初學的一種排序,具體思路爲: 對未排序的各元素從頭到尾依次比較相