## 粗略學了一遍后總結
總結很重要,不管是好總結還是總結不到位,都是經過大腦思考以后生成的概念,之后所有學習產生的思想都是建立在這些“先入為主”的概念之上的,如果之后看到的內容和總結大相徑庭。那就有很多提升的空間。相反則說明學習成果很不錯。
學了近一個月的JS,中途搞了CAD畫圖和平時雜七雜八的東西,總得來說學得不系統、不認真。但還是有一點兒感悟的。廢話不多說,正式開始。
首先在學之前感覺亂七八糟,框架更是五花八門,寫起來也像玩具語言。玩具玩具嘛,小孩子都能很快入手,說明它本身并沒有什么難度。事實上也是如此。
JS本身沒有那些太多的內容:
一、五種基礎類型(加ES6共六種)。
Number、 NULL、 Boolen、 String、 Undefind。 (ES6: Symbol)
它們構成了簡單的邏輯結構,剩下的內容全部塞入了對象。這本身就是JS的一大特性。同時JS的真值表就成為了一個很重要的內容塊。
二、所有的對象都繼承于Object對象。
正因為如此,關于繼承的內容就變得很重要。
1.什么是原型對象
2.什么是原型繼承
3.什么是原型鏈
4.繼承有幾種,有哪些應用
5.怎么判斷兩個對象是否相等
6.this apply() call()之間的聯系與區別
7. ……
三、JS的運行原理(分兩部分:客戶端和服務器端)
除了語言本身的特性外,就是在程序如何運行環境中解析和運行,只有理解了這些,才有可能寫出高性能的JS代碼。
1.什么是閉包,閉包的作用和場景
2.什么是回調函數,回調函數有哪些作用,什么時候會用到
3.什么是變量提升,會引起哪些問題
4.如何在明白JS運行原理后寫出高性能的JS代碼
5.什么是深拷貝,如何實現對象的深拷貝
6.知道多少設計模式,如何完整的構建一個JS框架
7. ……
四、JS依托于運行環境V8引擎的Nodejs和瀏覽器內核
理解運行環境運作方式,操作函數和環境變量就變得至關重要。
1.什么是DOM、BOM。描述渲染render樹的過程
2.如何操作DOM和BOM
3.瀏覽器是如何運作JS的
4.如何在明白瀏覽器運行原理后寫出高性能的JS代碼
5.window作為JS在宿主中的全局變量,有哪些常用的操作函數、環境變量
6.global作為Node在系統中的全局變量,有哪些常用的操作函數、環境變量
7. ……
五、JS對于數據的傳輸和交互
有網站就離不開數據,離不開數據交互,人機交互,那么傳輸并保證傳輸的完整性就很重要。
1.后端與前端有幾種傳輸數據方式,分別有什么優點和缺點
2.AJAX、JSONP、CORS三種傳輸方式都有哪些異同點
3.為什么會有同源策略
4.什么是跨域,如何處理跨域
5.如何保證數據完整傳輸
6.如何同步異步請求,描述promise原理,并實現
7. ……
六、JS的開發環境和框架
有程序就離不開開發環境,那么開發環境和對框架的選擇
1.什么是MVC、MVVM
2.webpack如何構建一個web應用
3.webpack如何配置
4.vuejs適用于哪些場景
5.什么是git,如何用git實現版本控制
6. ……
七、其他常用內容
1.JS的內置常用對象:Date()、 RegExp()、JSON()
2. ES6的map和set
3. 箭頭函數,箭頭函數的this指向
4. generator
5. ES6的class繼承
6. 什么是DNS
7. 什么是路由解析
8. 什么是http、ftp、https、ws
9. 什么是tcp/ip
10. 一個頁面從請求到接收經歷了哪些過程
11.JS如何實現登錄注冊
12. ……
這一個月基本上就是云里霧里的看了這么多東西,結合之前寫過的一些JS項目、近期寫的小demo后腦子里過濾出來這么多看似符合邏輯的內容。這也是為什么一直感覺它是玩具語言的原因,亂七八糟,不需要搞明白它怎么實現的,拿來即用。這是因為它的語言設計本身不成系統。相比于C語言嚴謹的邏輯構成,它更像是一種數據的集成并復制。
- 2023-4-8__成長之路
- 技術雜談
- 程序員境界
- 走進猿類
- 做一個程序員
- 什么是猿類
- 愛亂吹的猿
- 業余生活
- 我的書架
- 高效程序員的45個習慣
- 敏捷—高效軟件開發之道
- 態度決定一切
- 學無止盡
- 交付用戶想要的軟件
- 敏捷反饋
- 敏捷編碼
- 敏捷調試
- 藝術人生
- 摘自藝術的境界
- 如何欣賞畫
- 《的》
- 我的文檔
- 小白學習前那些說不完的事
- 計算機語言都一樣
- 嘗試理解他人代碼
- 做為旁觀者的思考
- 怎樣才算懂計算機
- 工欲善其事,必先利其器
- 教案日志
- 十天學電腦
- 一,認識計算機
- 二、認識編程語言
- 三、認識程序內涵
- 四,認識數據結構
- 五、認識電腦系統
- 六、認識通信原理
- 七、郵箱管理
- 八、重新審視電腦
- 九、理解終生學習
- 十、感悟三千世界
- c語言
- C語言——我覺得好簡單
- c學好不怕沒飯碗—2014.7.21
- C語言——我想的有點兒簡單
- 或多或少的c語言知識
- c語言初探篇
- 初探c語言底層
- 初探整型和浮點型
- 初探二進制數---原反補移
- 初探有無符號
- 初探c是如何跑起來的
- 初探指針
- 初探數組
- 初探順序表
- 初探棧,隊列
- 初探c語言編程
- c語言進階篇
- c語言自身的那些事
- 結構詳解
- c語言大成篇
- 人類思維——模式匹配
- 論c語言面試
- 數據結構
- 核心概念,沒有之一順序表
- 線性表代碼實現
- Sq_list
- 不存在的鏈表
- 只是一種思想——棧
- 只是一種思想——隊列
- 不存在的樹
- 只是一種思想——二分法
- 不存在的圖
- 算法原理
- 傅里葉變換
- 算法導論
- 算法導論——c語言實現
- 算法導論——java實現
- 組成原理
- 操作系統
- 初探操作系統
- 深究操作系統
- 操作系統如何跑起來
- 進程就像細胞
- 系統就像生命
- 進程樹pstree
- 進程
- 進程何時更名為生命
- 初探進程映像
- 程序如何成為進程映像
- PCB
- PCB解讀之——信號量(p_sig)
- 進程同步
- 進程通信
- 進程調度
- 用戶
- PPDA
- 存儲系統
- I/O系統
- 網絡原理
- 通信簡史
- 通信是網絡基礎
- 趣談網絡
- 自我介紹
- 快遞公司
- 小D的自述
- 網絡架構
- OSI/RM
- 應用層
- 表示層
- 會話層
- 傳輸層
- 網絡層
- 數據鏈路層
- 物理層
- TCP/IP四層模型
- 五層模型
- 網絡劃分
- IP史
- 信息安全
- 社會工程學
- 信息收集
- 誘導
- 偽裝
- 如何成為任何人
- 社會心理學
- 思維模式
- 說服的力量
- 代碼審計
- 災難恢復
- 安全注入
- 網絡工程
- 802.11
- CCNA
- CWNA
- 社會工程
- 社會心理
- 信息誘導
- 身份偽裝
- 系統框架
- web前端框架
- smarty框架
- bootstrap框架
- thinkphp框架
- zend框架
- yii框架
- ci框架
- 網站開發
- 五大難題
- 網站工作原理
- 數據庫原理
- 服務器原理
- 前端開發
- 前端技能基礎
- html
- css
- javascript
- 瀏覽器兼容
- 前端總結
- 后臺開發
- 或多或少的JS
- js初探篇
- 理解Javascript
- JS繼承
- 數組
- 操作方法
- DOM事件
- 數據傳輸
- JS面試題
- 數據對象
- 學生管理系統
- 學生管理首頁
- 粗略學了一遍后的總結
- 零碎知識
- js初探篇第二版
- javascript構成
- 基本類型
- 基本語句與判斷類型
- 基本對象與操作函數
- 基本判斷與甄別數據
- 內置對象與操作函數
- 對象認識與深淺復制
- DOM級別與BOM
- 嚴格模式與混雜模式
- ES5和ES6
- js進階篇
- 上傳圖片
- js實戰篇
- 或多或少的PHP
- 詳解url結構
- html基礎
- html初識
- html-組成頁面的基礎標簽
- ie兼容
- 教學方法
- 論php——編程思想
- 論php——底層實現
- 中華國學
- 易經
- 黃帝內經
- 山海經
- 道德經
- 騙經
- 中華哲學
- 一花一世界
- 道可道非常道
- 一瞬
- 宇宙
- 心得體會
- 電腦叫智能生命體更準確
- 計算機不是漢語模式
- 瑣事日記
- 成長與人性
- 祝單身狗快樂
- 人其實過的很單薄
- 都怪自己不夠優秀
- 那是幾個人的世界
- 認清世界,認清自己
- 陪伴繁華逝去的平凡
- 俯拾仰取
- 技術手冊
- 網站開發
- 準備工作
- firewalld
- mysql
- redis
- 開發流程
- 整體配置
- 環境配置
- tomcat配置
- 數字證書配置
- 項目配置
- 數據設計
- 用戶管理
- 整站設計
- user
- user_group
- user_role
- 服務端
- 了解學習
- quartz
- HelloWorld
- HelloJob
- HelloQuartz
- HelloScheduler
- Job
- JobDataMap
- Trigger
- Scheduler
- properties
- spring
- AOP
- 使用
- svnkit
- svn init
- FSFS
- server
- Java
- 測試
- 任務調度
- 網站架構
- 網站前端
- pc端
- 移動端
- native
- ios
- android
- ipad
- hybrid
- 技術日志
- 2018-9-26
- 2018-11-26
- 資源收集
- UED資源
- 技術架構
- 云平臺
- 工作方面
- 實習工作經驗
- 草稿1
- 草稿2
- 草稿3
- 草稿4
- 草稿5
- 草稿6
- 草稿7
- 大學總結
- 面經
- 一、職能定位
- 細節
- 前端
- 工作總結
- 簡歷
- 職業規劃
- 一年規劃
- 整理歸檔
- 2015/11/10以前
- 2015/11/10
- 2015/11/11
- 2015/11/12
- 2015/11/13
- 2015/11/14
- 2015/11/15與16
- 2015/11/17
- 2015/11/18
- 2015/11/19與20
- 2015/11/21
- 2015/11/22
- 2015/11/23
- 2015/11/24
- 2015/11/25
- 2015/11/26
- 2015/11/27
- 2015/11/28
- 2015/11/29
- 2015/11/30-12/6
- 2015/12/7-2016/4/18
- 2016/4/19
- 2016/4/20~2017/6/27
- 2017/6/28-2017/7/4
- 2017/7/5-2018/1/11
- 2018/1/12
- 2018/1/13-2018/4/19
- 2018/4/20
- 2018/4/21-2018/5/10
- 2018/5/11
- 2018/5/12-2018/5/16
- 2018/5/17-2018/5/30
- 2018/5/30-2018/10/15
- 2018/10/15-2018/10/18
- 2018/10/19-2018/11/17
- 2018/11/17-2018/12/31
- 結束----------------開始
- 2019/2/18
- 2020/7/30
- 2020/9/5
- 2021/5/6
- 回收站
- 以前文件
- 2015-10-17__成長之路
- 2018-10-15__成長之路
- 2020-3-29__成長之路
- 畢業三年總結
- 浙大之旅
- 2020
- 英語
- 基礎3000單詞
- 第一周
- 百詞斬__126
- 百詞斬__126翻譯
- 百詞斬__252
- 百詞斬_252翻譯
- 百詞斬__392
- 百詞斬__532
- 百詞斬__672
- 第二周
- 百詞斬__812
- 聽力
- 新東方演講稿
- 庫克杜克大學演講全文版
- 庫克杜克大學演講演講英文對照版