Enviar pesquisa
Carregar
4. 使用物件
•
Transferir como PPTX, PDF
•
0 gostou
•
183 visualizações
Justin Lin
Seguir
掌握this參考 運用物件實字 認識物件協定 使用符號協定
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 52
Baixar agora
Recomendados
認識建構式之作用 理解原型鏈機制 區別原型與類別典範 善用類別語法
5. 建構式、原型與類別
5. 建構式、原型與類別
Justin Lin
《Python 3.5 技術手冊》第 5 章投影片
從模組到類別
從模組到類別
Justin Lin
深入模組管理 初識物件導向 學習定義類別 定義運算子
從模組到類別
從模組到類別
Justin Lin
瞭解封裝觀念與實現 定義類別、建構式與方法 使用方法重載與不定長度引數 瞭解static成員
Java SE 8 技術手冊第 5 章 - 物件封裝
Java SE 8 技術手冊第 5 章 - 物件封裝
Justin Lin
《Python 3.5 技術手冊》第 14 章投影片
進階主題
進階主題
Justin Lin
區分基本型態與類別型態 瞭解物件與參考的關係 從包裹器認識物件 以物件觀點看待陣列 認識字串的特性
Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件
Justin Lin
深入模組管理 初識物件導向 學習定義類別 定義運算子
5. 從模組到類別
5. 從模組到類別
Justin Lin
使用 pickle 與 shelve 認識 DB-API 2.0 使用 sqlite3 模組 處理 CSV、JSON、XML
資料永續與交換
資料永續與交換
Justin Lin
Recomendados
認識建構式之作用 理解原型鏈機制 區別原型與類別典範 善用類別語法
5. 建構式、原型與類別
5. 建構式、原型與類別
Justin Lin
《Python 3.5 技術手冊》第 5 章投影片
從模組到類別
從模組到類別
Justin Lin
深入模組管理 初識物件導向 學習定義類別 定義運算子
從模組到類別
從模組到類別
Justin Lin
瞭解封裝觀念與實現 定義類別、建構式與方法 使用方法重載與不定長度引數 瞭解static成員
Java SE 8 技術手冊第 5 章 - 物件封裝
Java SE 8 技術手冊第 5 章 - 物件封裝
Justin Lin
《Python 3.5 技術手冊》第 14 章投影片
進階主題
進階主題
Justin Lin
區分基本型態與類別型態 瞭解物件與參考的關係 從包裹器認識物件 以物件觀點看待陣列 認識字串的特性
Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件
Justin Lin
深入模組管理 初識物件導向 學習定義類別 定義運算子
5. 從模組到類別
5. 從模組到類別
Justin Lin
使用 pickle 與 shelve 認識 DB-API 2.0 使用 sqlite3 模組 處理 CSV、JSON、XML
資料永續與交換
資料永續與交換
Justin Lin
瞭解封裝觀念與實現 定義類別、建構式與方法 使用方法重載與不定長度引數 瞭解static成員
物件封裝
物件封裝
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Justin Lin
探索物件特性 判斷物件型態 認識Reflect API 結合Proxy與Reflect API
9. meta-programming
9. meta-programming
Justin Lin
認識基本流程語法 使用 for Comprehension 認識函式與變數範圍 運用一級函式特性 使用 yield 建立產生器 初探型態提示
流程語法與函式
流程語法與函式
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 16 章 - 自訂泛型、列舉與標註
Java SE 7 技術手冊投影片第 16 章 - 自訂泛型、列舉與標註
Justin Lin
進階自訂泛型 進階自訂列舉 使用標準標註 自訂與讀取標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Justin Lin
《Python 3.5 技術手冊》第 9 章投影片
資料結構
資料結構
Justin Lin
運用描述器 實作裝飾器 定義 meta 類別 使用相對匯入 泛型進階
14. 進階主題
14. 進階主題
Justin Lin
《Python 3.5 技術手冊》第 3 章投影片
型態與運算子
型態與運算子
Justin Lin
瞭解串流與輸入輸出的關係 認識InputStream、OutputStream繼承架構 認識Reader、Writer繼承架構 使用輸入輸出裝飾器類別
Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 10 章 - 輸入輸出
Justin Lin
認識型態與變數 學習運算子基本使用 瞭解型態轉換細節 運用基本流程語法
Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 8 技術手冊第 3 章 - 基礎語法
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 12 章 - 通用API
Java SE 7 技術手冊投影片第 12 章 - 通用API
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Justin Lin
認識Lambda語法 運用方法參考 瞭解介面預設方法 善用Functional與Stream API Lambda與平行化
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Justin Lin
Js 函数 function学习笔记
Js 函数 function学习笔记
keke302
運用描述器 實作裝飾器 定義 meta 類別 使用相對匯入 泛型進階
進階主題
進階主題
Justin Lin
認識 Spring Boot 認識 Spring Tool Suite 遷移微網誌至 Spring Boot
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
區別程式庫與框架 逐步善用 Spring MVC 簡介 Thymeleaf 模版 使用 Spring Security
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
Mais conteúdo relacionado
Mais procurados
瞭解封裝觀念與實現 定義類別、建構式與方法 使用方法重載與不定長度引數 瞭解static成員
物件封裝
物件封裝
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Justin Lin
探索物件特性 判斷物件型態 認識Reflect API 結合Proxy與Reflect API
9. meta-programming
9. meta-programming
Justin Lin
認識基本流程語法 使用 for Comprehension 認識函式與變數範圍 運用一級函式特性 使用 yield 建立產生器 初探型態提示
流程語法與函式
流程語法與函式
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 16 章 - 自訂泛型、列舉與標註
Java SE 7 技術手冊投影片第 16 章 - 自訂泛型、列舉與標註
Justin Lin
進階自訂泛型 進階自訂列舉 使用標準標註 自訂與讀取標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Justin Lin
《Python 3.5 技術手冊》第 9 章投影片
資料結構
資料結構
Justin Lin
運用描述器 實作裝飾器 定義 meta 類別 使用相對匯入 泛型進階
14. 進階主題
14. 進階主題
Justin Lin
《Python 3.5 技術手冊》第 3 章投影片
型態與運算子
型態與運算子
Justin Lin
瞭解串流與輸入輸出的關係 認識InputStream、OutputStream繼承架構 認識Reader、Writer繼承架構 使用輸入輸出裝飾器類別
Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 10 章 - 輸入輸出
Justin Lin
認識型態與變數 學習運算子基本使用 瞭解型態轉換細節 運用基本流程語法
Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 8 技術手冊第 3 章 - 基礎語法
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 12 章 - 通用API
Java SE 7 技術手冊投影片第 12 章 - 通用API
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Justin Lin
認識Lambda語法 運用方法參考 瞭解介面預設方法 善用Functional與Stream API Lambda與平行化
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Justin Lin
Java SE 7 技術手冊
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Justin Lin
Js 函数 function学习笔记
Js 函数 function学习笔记
keke302
運用描述器 實作裝飾器 定義 meta 類別 使用相對匯入 泛型進階
進階主題
進階主題
Justin Lin
Mais procurados
(20)
物件封裝
物件封裝
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
Java SE 7 技術手冊投影片第 10 章 - 輸入輸出
9. meta-programming
9. meta-programming
流程語法與函式
流程語法與函式
Java SE 7 技術手冊投影片第 16 章 - 自訂泛型、列舉與標註
Java SE 7 技術手冊投影片第 16 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 8 技術手冊第 18 章 - 自訂泛型、列舉與標註
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
Java SE 7 技術手冊投影片第 06 章 - 繼承與多型
資料結構
資料結構
14. 進階主題
14. 進階主題
型態與運算子
型態與運算子
Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 10 章 - 輸入輸出
Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 8 技術手冊第 3 章 - 基礎語法
Java SE 7 技術手冊投影片第 12 章 - 通用API
Java SE 7 技術手冊投影片第 12 章 - 通用API
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 7 技術手冊投影片第 03 章 - 基礎語法
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 11 章 - 執行緒與並行API
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Java SE 7 技術手冊投影片第 15 章 - 反射器與類別載入器
Js 函数 function学习笔记
Js 函数 function学习笔记
進階主題
進階主題
Mais de Justin Lin
認識 Spring Boot 認識 Spring Tool Suite 遷移微網誌至 Spring Boot
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
區別程式庫與框架 逐步善用 Spring MVC 簡介 Thymeleaf 模版 使用 Spring Security
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
使用 Gradle 結合 Gradle 與 IDE 認識相依注入 使用 Spring 核心
Ch12 Spring 起步走
Ch12 Spring 起步走
Justin Lin
寄送純文字郵件 寄送 HTML 郵件 寄送附檔郵件
Ch11 簡介 JavaMail
Ch11 簡介 JavaMail
Justin Lin
了解 Java EE 安全概念與名詞 使用容器基本驗證與表單驗 使用 HTTPS 保密資料傳輸
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Justin Lin
了解 JDBC 架構 使用基本的 JDBC 透過 JNDI 取得DataSource 在 Web 應用程式整合資料庫
Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
使用 Tag File 自訂標籤 使用 Simple Tag 自訂標籤 使用 Tag 自訂標籤
Ch08 自訂標籤
Ch08 自訂標籤
Justin Lin
了解何謂 JSTL 使用 JSTL 核心標籤庫 使用 JSTL 格式標籤庫 使用 JSTL XML 標籤庫 使用 JSTL 函式標籤庫
Ch07 使用 JSTL
Ch07 使用 JSTL
Justin Lin
了解 JSP 生命週期 使用 JSP 語法元素 使用 JSP 標準標籤 使用運算式語言(EL) 自訂 EL 函式
Ch06 使用 JSP
Ch06 使用 JSP
Justin Lin
了解 Servlet 生命週期 使用 ServletConfig 與ServletContext 使用 PushBuilder 各種傾聽器的使用 繼承 HttpFilter 實作過濾器
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
了解會話管理基本原理 使用 Cookie 類別 使用 HttpSession 會話管理 了解容器會話管理原理
Ch04 會話管理
Ch04 會話管理
Justin Lin
取得請求參數與標頭 處理中文字元請求與回應 設定與取得請求範圍屬性 使用轉發、包含、重新導向
Ch03 請求與回應
Ch03 請求與回應
Justin Lin
開發環境準備與使用 了解 Web 應用程式架構 Servlet 撰寫與部署設定 了解 URI 模式對應 使用 web-fragement.xml
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Justin Lin
認識 HTTP 基本特性 了解何為 URI 編碼 認識 Web 容器角色 了解 Servlet 與 JSP 的關係 認識 MVC/Model 2
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
Justin Lin
認識並行、平行與非同步 使用 threading 模組 使用 multiprocessing 模組 使用 concurrent.futures模組 運用 async、await 與 asyncio
13.並行、平行與非同步
13.並行、平行與非同步
Justin Lin
使用 pdb 模組除錯 對程式進行單元測試 使用 timeit 評測程式片段 使用 cProfile(profile)察看評測數據
12. 除錯、測試與效能
12. 除錯、測試與效能
Justin Lin
處理日期與時間 認識日誌的使用 運用規則表示式 管理檔案與目錄 URL 處理
11. 常用內建模組
11. 常用內建模組
Justin Lin
使用 pickle 與 shelve 認識 DB-API 2.0 使用 sqlite3 模組 處理 CSV、JSON、XML
10. 資料永續與交換
10. 資料永續與交換
Justin Lin
認識 hashable、iterable、orderable 對物件進行排序 認識群集架構 運用 collections 模組 運用 collections.abc 模組
9. 資料結構
9. 資料結構
Justin Lin
使用 open()函式 使用 stdin、stdout、stderr 認識檔案描述器 認識 io 模組
8. open() 與 io 模組
8. open() 與 io 模組
Justin Lin
Mais de Justin Lin
(20)
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Ch12 Spring 起步走
Ch12 Spring 起步走
Ch11 簡介 JavaMail
Ch11 簡介 JavaMail
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Ch09 整合資料庫
Ch09 整合資料庫
Ch08 自訂標籤
Ch08 自訂標籤
Ch07 使用 JSTL
Ch07 使用 JSTL
Ch06 使用 JSP
Ch06 使用 JSP
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch04 會話管理
Ch04 會話管理
Ch03 請求與回應
Ch03 請求與回應
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
13.並行、平行與非同步
13.並行、平行與非同步
12. 除錯、測試與效能
12. 除錯、測試與效能
11. 常用內建模組
11. 常用內建模組
10. 資料永續與交換
10. 資料永續與交換
9. 資料結構
9. 資料結構
8. open() 與 io 模組
8. open() 與 io 模組
4. 使用物件
1.
2.
4.使用物件 • 學習目標 – 掌握this參考 –
運用物件實字 – 認識物件協定 – 使用符號協定 2
3.
特性與undefined • 試圖存取物件上不存在的特性時,會傳回 undefined • 請問這個物件存不存在x特性呢? 3
4.
• 「特性名稱不存在」與「特性值被設為 undefined」是兩件不同的事 • 避免將物件的特性值設為undefined •
陣列的索引其實是數字為名稱的特性,空 項目則是連數字特性都不存在 4
5.
• 建議別去修改陣列的length • JavaScript中的API,對陣列空項目的處理 方式並不一致 5
6.
• 更嚴格的檢驗 6
7.
函式與this • 物件在本質上,就像個特性的集合體 • 函式是一級值,也就可以將函式指定給物 件成為特性 7
8.
8
9.
9
10.
• this實際參考的對象,是以呼叫方式而定 10
11.
• 如果函式原本具有參數,可接續在第一個 參數之後 11
12.
• 如果有一組引數,必須在多次呼叫間共用, 就可以使用apply()方法 12
13.
• 改變this參考的對象 13
14.
• 函式實例有個bind()方法,執行結果傳回 新函式 • 新函式的this綁定對象,會固定為呼叫 bind()時指定的物件 14
15.
15
16.
• 部份函式(Partial function) •
對於一個單純就是函式,不需使用到this 的需求下,建議將this設為undefined 16
17.
全域物件 • Number、Math、Array等API是作為全域 物件的特性存在 • 在不同的環境中想要取得全域物件,會透 過不同的名稱 •
在Node.js中… 17
18.
• 若呼叫函式時,無法透過.運算、call()、 apply()等方法確定this的對象,在嚴格 模式下this會是undefined 18
19.
箭號函式與this • 箭號函式在this方面的解析方式,與函式 實字不同 19
20.
• 箭號函式中的this是依當時的語彙 (Lexical)環境來綁定 20
21.
• 箭號函式一旦綁定了this,就不會再改變 21
22.
物件實字增強 22
23.
23
24.
24
25.
• 定義設值方法(Setter)、取值方法 (Getter) 25
26.
解構(Destructuring) 26
27.
• 只要是可迭代的物件,也就是具有可傳回 迭代器的特性,都可以運用解構 27
28.
餘集(Rest) 28
29.
• 如果可迭代的元素個數少於變數的數量, 那麼多出來的變數會是undefined • 如果可迭代的元素個數少於變數的數量, 也可以指定變數的預設值 29
30.
• 如果只對某幾個元素有興趣呢? • 如果只對尾端元素有興趣 30
31.
• 實現類似Python風格的變數置換 31
32.
打散(Spread) 32
33.
• 物件也可以解構 • 變數還可以指定預設值 33
34.
• 解構語法也可以用在函式的參數上… 34
35.
• 在ES9時,物件也可以用餘集語法 • 將物件的特性打散 35
36.
valueOf() • 在需要基本型態的場合時會呼叫,而且必 須傳回基本型態值 • 預設的valueOf()只傳回實例本身 36
37.
37
38.
• 如果是有點年份的API,例如,早期就存在 的API,必須確認行為是否符合預期 38
39.
• 對於必須取得基本型態字串的場合,可以 定義物件的toString()方法 39
40.
符號 • 從ES6開始,基本資料型態多了一個符號 (symbol) • 為了建立獨一無二的行為象徵而存在 •
對符號值使用typeof,會傳回'symbol' 40
41.
• 被指定的說明文字,ES10以後可以從 Symbol的description特性取得,而且 會成為toString()方法的傳回字串內容 41
42.
• 全域註冊表 – 要將建立的符號值保存到註冊表,或者從註冊 表取得已建立的符號,可以透過 Symbol.for()函式 •
主要是為了開發者自訂協定而存在,務必 小心謹慎,制定好名稱規範,避免協定衝 突問題 42
43.
• 可以使用Symbol.keyFor()傳回它在全 域符號註冊表中的鍵,也就是符號描述字 串,如果傳回字串就表示已登錄符號 43
44.
運用標準符號 • 在試圖使用Symbol.for()建立自訂協定 前,應該先看看是否有適用的標準符號 • Symbol.iterator •
Symbol.toPrimitive 44
45.
Symbol.iterator • 用於迭代器協定的符號 • 陣列就定義了Symbol.iterator方法 45
46.
46
47.
47
48.
• 對於簡單迭代,使用產生器語法方便許多 48
49.
Symbol.toPrimitive • 定義了Symbol.toPrimitive方法的物件, 在需要取得基本型態的情況,會使用 Symbol.toPrimitive方法而不是 valueOf() 49
50.
50
51.
• 為物件定義特性或方法時,預設是可列舉 的,就算使用符號,也是可列舉的 • 然而符號不會被for..in列舉,不過,使 用in測試的話會是true 51
52.
• 定義設值、取值方法時,對象也可以是 Symbol 52
Baixar agora