原创 Javascript簡易算法筆記: 遞歸、簡單的數據結構

前言 注意: 本文不是新系列,只是學習算法時偶爾用到的筆記(刷題用的),不定期更新 這是一篇關於算法基礎的文章,不涉及任何數學分析,只有最最基礎的邏輯思維過程。大部分內容是個人理解,每個人想法自然迥異,歡迎討論。 Q: Javas

原创 精讀Javascript系列(七)事件循環細則 I:微任務、宏任務

前言 對於Javascript異步,我是從其他面向對象編程語言的併發編程層層向下介紹的,在一些細節上並沒有多詳細說明。此次算是補充所缺,在選擇主題時,我茫然了好一陣,決定從微任務和宏任務開始入手,閱讀下文時,儘可能有些Promis

原创 精讀Javascript系列(9coll) Promise — 回調地獄、Promise構造器

前言:當前進階進度 看一下進階時間線: 看到夢想之前,我只想到了無限長的距離…… 首先解釋一下這張時間線,它的起點就是入門完成,所以自然會從印象最深的概念開始入手——即異步這裏。所以較複雜的知識已經在之前搞完了,現在就是比較簡單的

原创 精讀Javascript系列(10) Promise——Promise/A+規範解讀Promise

前言:必要前提 閱讀本文有一個很重要的前提—— 就是知道 Promise是怎麼構造的,也可以說知道在構造Promise實例過程中究竟發生了什麼,是理解Promise必不可缺的關鍵一步。 試着問下自己這幾個問題: Promise的

原创 精讀Javascript系列(八)事件循環細則 II: NodeJS事件循環相關

前言 本篇也是過渡篇,主要補充NodeJS的重點和難點。 嘛,廢話不多說,正文開始。 NodeJS 首先,理解 NodeJS 有一個很重要的前提,就是知道它究竟是 單線程的,還是 多線程 的? 還是如以往一樣,越是簡單的問題答案就

原创 精讀Javascript系列(六)併發編程、 Javascript異步框架

前言 Javascript是非阻塞型單線程事件驅動的語言,故而JS和瀏覽器API(WebWorker)聯合才能實現異步,異步並不是JS核心的一部分。如果接觸過C++這類較底層的面嚮對象語言,就可知JS異步是併發編程的極大幅度簡化,

原创 精讀Javascript系列(五) 函數閉包

前言 本文專門介紹閉包,但事實上,閉包的難點並不在概念,而是在詞法環境的嵌套上。只要將詞法環境的嵌套關係整理清楚,閉包就瞬間被克服了。 總之,先不廢話了,正文開始。 閉包 如果一個函數在定義的詞法環境外運行並記住了定義時的詞法環境

原创 精讀Javascript系列(四)過渡篇:左值與This綁定

前言: 總結前三篇的內容,可以將學習路線圖歸納爲以下: 變量與標識符 —> 詞法環境與作用域 —> 詞法環境與環境記錄 —> 詞法環境與執行上下文 執行上下文與執行棧 —> 執行棧與任務序列 —> 事件循環入門 。 從這個路線中

原创 精讀Javascript系列(三) 執行上下文、 執行棧、初識事件循環

前言 這時可以接觸真正實用的東西了,畢竟變量也不能代表整個Javascript語言,雖然有些不可思議,但變量的確是Javascript必經之路之一,關於變量的奇特行爲數不勝數(真的是這樣),不過這些我想高階Javascript都努

原创 精讀Javascript系列(二)環境記錄與詞法環境

前言 關於變量,在Javascript核心知識體系中,佔比不重,即使有些迷惑行爲,也認爲Javascript本應就如此,就因爲下意識的草率,導致這些小問題成了日後進階的壁障。 這裏就先從兩個極爲經典的問題開始吧。 變量提升和暫存死

原创 精讀Javascript系列序---導讀

前言 趁現在還能學習的時候學習點真正有用的東西吧。這是我從某人那裏聽到了這樣的一句話,我決定翻一翻過去學習Javascript的導圖筆記,之後發現對Javascript有了億點點更新的認識。我很想這種心情記錄下來,這就是我決定在有

原创 精讀Javascript系列(一) 變量 、 初識詞法環境

前言 其實,我覺得Javascript核心中重要的東西並非是從舊版本擴展來的高大上的語法,例如解構賦值啊、展開語法和剩餘參數(嘛……雖然的確是很666),但是用好這些,其實都建立在你對變量的認識上(常有人不知道什麼是左值或右值的區

原创 建模學習:順序圖

學習目標: 什麼是順序圖 順序圖基本構造以及規則(消息、生命框圖、生命線) 繪製順序圖(互發消息、創建以及銷燬實例、循環、可選、分支以及模塊引用) 總結 順序圖   順序顯示了用例中的每個交互場景,以及參與者與系統之間的消息序列。相當於與

原创 建模學習:領域模型

學習目標:     瞭解什麼是領域模型     如何找出概念類     繪製領域模型 領域模型    領域模型是現實世界的映射,主要關注對現實世界的概念,而不是純粹計算機語言的描述,因此領域模型也被稱作概念透視圖。由於領域模型會把重要的特

原创 建模學習小結:Astah基本使用方法

概覽:  工具的基本使用方法  小結 工具: 主界面: 版本:7.2 pro 最新版本:8.0 pro 標準: UML1.4  & 部分支持UML2.x 插件:有 包含圖: Flowchart 流程圖 Data Flow  Diagra