張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 MIR實驗室 第23章 程式碼的重複使用 張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 MIR實驗室.

Slides:



Advertisements
Similar presentations
口臭不苦惱 清新口氣大作戰 口臭不只破壞人際的互動,更是 身體發出的警訊,不能輕忽。 康健雜誌 89 期文. 梁煙純 攝影.邱瑞金.
Advertisements

大綱 1. 三角函數的導函數. 2. 反三角函數的導函數. 3. 對數函數的導函數. 4. 指數函數的導函數.
1 自然人憑證 結合人事差假管理系統 指導老師:丁德榮 教授 作者:何岳剛、蘇巨鋒、廖偉吏、鄭致瑋、湯媛喬、李封儒 報告人:廖偉吏 彰化師範大學 資訊工程學系 報告日期: 95/11/2.
做好就业与自主创业的准备.
第1章第3节 量化研究与质化研究 案例1:关于中学思想政治教师专业发展现状和需求的调查研究
世界各國的成人儀式 劉 奕 麟老師.
寶島債.
第4章 JavaScript脚本语言基础 4.1 JavaScript简介 4.2 JavaScript语法基础
TQC+ JAVA全國教師研習會 PLWeb 程式設計練習平台 簡介.
5.1 – 表格(FORM) 輸入元素 : 兩種傳遞方法 : GET or POST 範例 1. 文字欄位 Text box
Chapter 5 遞迴 資料結構導論 - C語言實作.
張智星 台大資工系 MIR實驗室 第24章 WSH 範例精選 張智星 台大資工系 MIR實驗室.
ASP VBScript 基础知识.
目錄 前言 八達通 使用八達通的好處 八達通的種類 輕鐵 輕鐵的設施 輕鐵的發展 輕鐵與西鐵
張智星 台大資工系 MIR實驗室 第十九章 AJAX 與非同步傳輸 張智星 台大資工系 MIR實驗室.
程式設計概論 1.1 程式設計概論 程式語言的演進 物件導向程式 程式開發流程 1.2 C++開發工具
第1章 認識Arduino.
資料庫管理 操作DBMS 指導教授:楊維邦  助教:廖皓翔.
客戶端的檔案上傳 HtmlInputFile檔案控制項 上傳單一檔案 同時上傳多個檔案.
第22章 WSH (Window Script Host) 基本介紹
第22章 WSH (Window Script Host) 基本介紹
ASP.NET基本設計與操作 建國科技大學 資管系 饒瑞佶 2007年.
Ch01網際網路、HTML 、 Script 、 ASP.NET簡介
第2章 网络营销工具.
安裝JDK 安裝Eclipse Eclipse 中文化
網頁切換移轉 JS vs. ASP.NET.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A.
Android App簡介及 App Inventor 2體驗 靜宜大學資管系 楊子青
檔案與磁碟的基本介紹.
網頁切換移轉 JS vs. ASP.NET.
張智星 台大資工系 MIR實驗室 第二十章 檔案與目錄 張智星 台大資工系 MIR實驗室.
張智星 台大資工系 多媒體檢索實驗室 第十二章 ASP基本介紹 張智星 台大資工系 多媒體檢索實驗室.
程式設計實習課(四) ----C 函數運用----
VS.NET 2003 IDE.
App Inventor 2初體驗 靜宜大學資管系 楊子青
Ch20. 計算器 (Mac 版本).
MATLAB在常微分方程上的應用 楊惠如 老師:王天楷教授 2005/8/30.
第一個cordova project Cordova project建立與平台設定,均藉由cli(command line interface來完成 建立project請打開命令提示字元視窗應輸入下列命令 cordova create hello tw.edu.stust.mis.hello HelloWorld.
|07 函數.
網頁程式概論 建國科技大學資管系 饒瑞佶 2015/9 V1 2016/4 V2 2016/9 V3.
張智星 台大資工系 MIR實驗室 第十四章 Request 物件 張智星 台大資工系 MIR實驗室.
表格(HTML – FORM).
網站HOLMES DATA監測代碼.
張智星 清大資工系 多媒體檢索實驗室 Tree Net Construction 張智星 清大資工系.
期末考.
微積分網路教學課程 應用統計學系 周 章.
挑戰C++程式語言 ──第8章 進一步談字元與字串
探測工具:NetCat.
引用檔案.
红利、年金、满期金自动转入聚宝盆,收益有保底,升值空间更大
表格(HTML – FORM)
Video 影像 (VideoPlayer 影像播放器、Camcorder 錄影機) 靜宜大學資管系 楊子青
風能 主題:風能 班級:四環工一A 組員:林明哲 4980N047 江信宏 4980N079
ASP动态网页设计实用教程 主讲教师:贾海陶.
函數應用(二)與自定函數.
編輯網頁可用那些應用程式? 記事本 Word FrontPage Dreamweaver.
Chapter 15 檔案存取 LabVIEW中的檔案存取函數也可將程式中的資料儲存成Excel或Word檔。只要將欲存取的檔案路徑位址透過LabVIEW中的路徑元件告訴檔案存取函數後,LabVIEW便可將資料存成Excel或Word檔;當然也可以將Excel或Word檔的資料讀入LabVIEW的程式中。
喜雨亭記 國二甲 S 陳姿婷.
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A.
Brief Guide of FrontPage
Parasitics Extraction (PEX) 與 postsimulation(posim)
W3C标准网页制作 主讲教师:张 涛.
張智星 台大資工系 多媒體檢索實驗室 第十三章 函數與程式碼的重複使用 張智星 台大資工系 多媒體檢索實驗室.
多站台網路預約系統之 AJAX即時資料更新機制
What is “this”? 在物件導向程式設計中,類別的定義就是在說明如果創建了“這個物件”的話,它會具有那些屬性與功能,以及這些功能是如何實現的。 而所謂的“這個物件”就以 this 來表示。 當我們在JavaScript與jQuery中寫 script 程式(函式)時,“誰”呼叫這個函式,這個“誰”就是該函式中所謂的.
NFC (近場通訊, Near Field Communication) 靜宜大學資管系 楊子青
Unix指令4-文字編輯與程式撰寫.
Develop and Build Drives by Visual C++ IDE
JavaScript 教师:魏小迪
方法(Method) 函數.
Presentation transcript:

張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 MIR實驗室 第23章 程式碼的重複使用 張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 MIR實驗室

本章大綱 大綱 本章介紹 WSH 的函數,以及函數定義檔的使用。JavaScript 函數定義檔可用於客戶端的網頁、伺服器端的 ASP、本機的WSH,這可說是 JavaScript 語言一大優勢。 主題 23-1:函數 23-2:函數定義檔的使用

23-1 :函數 本小節將說明函數的使用。

使用函數的目的 對於任何程式語言來說,若要能建立大型應用程式,程式碼就要模組化(Modularized)以便提高其重複使用度(Reusability)。 因此在撰寫 WSH 的程式碼時,應該注意程式碼的重複性,並設法將重複出現的部分寫成函數(或稱函式),以便重複使用。

範例23-1 主題:使用函數 sum() 來算出由 1 加到 n 的總和 執行結果 檢視原始碼 程式碼重點: 說明: 執行結果 檢視原始碼 程式碼重點: 說明: 執行後所顯示結果: 1+2+...+40 = 820 function sum(n) { var i, total=0; for (i=1; i<=n; i++) total = total + i; return(total); } n = 40; WScript.Echo("1+2+...+" + n + " = " + sum(n) + "\n");

範例23-2 主題:先呼叫此函數,然後再定義函數 執行結果 檢視原始碼 程式碼重點: 說明: 將函數定義調到主程式之後,執行的結果相同。 執行結果 檢視原始碼 程式碼重點: 說明: 將函數定義調到主程式之後,執行的結果相同。 n = 40; WScript.Echo("1+2+...+" + n + " = " + sum(n) + "\n"); function sum(n) { var i, total=0; for (i=1; i<=n; i++) total = total + i; return(total); }

範例23-3 主題:相同功能的函數,改用 VBScript 來撰寫 執行結果 檢視原始碼 程式碼重點: 說明: 執行後所得到的結果是一樣的。 執行結果 檢視原始碼 程式碼重點: 說明: 執行後所得到的結果是一樣的。 同樣的,在使用 VBScript 於 WSH 時,也可將函數的定義放到後面,得到的結果也會相同。 function sum(n) dim i, total total = 0 for i = 1 to n total = total + i next sum = total end function n = 40 WScript.Echo("1+2+...+" & n & " = " & sum(n) & chr(13) & chr(10))

23-2 :函數定義檔的使用 本小節將說明如何使用函數定義檔。

如何使用函數定義檔 我們可以將常用的函式,放在一個函式定義檔內,再從其他程式中,加入此檔案,就可以使用此函式定義檔中所定義的函式。 WSH 所用的函式檔案,可以具有任何附檔名,但我們通常將此類函式檔案的附檔名設定為 fun(這是個人的習慣,你也可以選用不同的附檔名),以資區別。

sumFunction.fun 用途:計算由1到n的總和的函式 程式碼重點: 說明: 我們可以將計算由1到n的總和的函式sum(),放在 sumFunction.fun function sum(n) { var i, total=0; for (i=1; i<=n; i++) total = total + i; return(total); }

範例23-4 主題:以插入來源的方式導入函式定義檔 執行結果 檢視原始碼 檢視sumFunction.fun 程式碼重點: 說明: 若要呼叫此檔案所定義的函式,通常必須將主程式的附檔名改為 wsf,並使用下述方式來導入函式定義檔: <script src="sumFunction.fun"> <job> <script src="sumFunction.fun"></script> <script> WScript.Echo("1+2+...+" + n + " = " + sum(n)); </script> </job>

範例23-5 (1) 主題:在不同的程式語言呼叫同一個函式庫 執行結果 檢視原始碼 程式碼重點 說明: 執行結果 檢視原始碼 程式碼重點 說明: 我們使用 JScript 和 VBScript 來呼叫同一個(由 JScript 來撰寫的)函數,執行後可得到同樣的結果,顯示如下: 1+2+...+40 = 820 (via Jscript) 1+2+...+40 = 820 (via VBScript) <job> <script src="sumFunction.fun"></script> <script language=jscript>…</script> <script language=vbscript>…</script> </job>

範例23-5 (2) 我們可以使用同樣一個函數定義檔於客戶端的 JavaScript(用於網頁)、伺服器端的 JScript(用於 ASP)、本機的 JScript(用於 WSH)。 假設我們要導入函數定義檔 file.fun,則在上述三種環境下所用的導入指令列出如下: Client-side JavaScript(in HTML) <script src="file.fun"></script> 相關說明可見本書第 5 章。 Server-side JScript(in ASP) <script language=jscript runat=server src="file.fun"> 相關說明可見本書第 13 章。(請注意:這裡不能省略 language 的標籤!) Standalone JScript(in WSH)