張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 多媒體檢索實驗室 第十三章 函數與程式碼的重複使用 張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 多媒體檢索實驗室.

Slides:



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

大綱 1. 三角函數的導函數. 2. 反三角函數的導函數. 3. 對數函數的導函數. 4. 指數函數的導函數.
1 自然人憑證 結合人事差假管理系統 指導老師:丁德榮 教授 作者:何岳剛、蘇巨鋒、廖偉吏、鄭致瑋、湯媛喬、李封儒 報告人:廖偉吏 彰化師範大學 資訊工程學系 報告日期: 95/11/2.
第 8 章 還原資料庫.
SSI(Server Side Include)
MATLAB 程式設計 時間量測 清大資工系 多媒體資訊檢索實驗室.
Introduction to C Programming
第1章第3节 量化研究与质化研究 案例1:关于中学思想政治教师专业发展现状和需求的调查研究
世界各國的成人儀式 劉 奕 麟老師.
TQC+ JAVA全國教師研習會 PLWeb 程式設計練習平台 簡介.
手术部位感染目标性监测存在的问题及对策探讨
Chapter 5 遞迴 資料結構導論 - C語言實作.
ASP VBScript 基础知识.
目錄 前言 八達通 使用八達通的好處 八達通的種類 輕鐵 輕鐵的設施 輕鐵的發展 輕鐵與西鐵
張智星 台大資工系 MIR實驗室 第十九章 AJAX 與非同步傳輸 張智星 台大資工系 MIR實驗室.
程式設計概論 1.1 程式設計概論 程式語言的演進 物件導向程式 程式開發流程 1.2 C++開發工具
客戶端的檔案上傳 HtmlInputFile檔案控制項 上傳單一檔案 同時上傳多個檔案.
第22章 WSH (Window Script Host) 基本介紹
類別(class) 類別class與物件object.
SQL Stored Procedure SQL 預存程序.
ASP.NET基本設計與操作 建國科技大學 資管系 饒瑞佶 2007年.
Methods 靜宜大學資工系 蔡奇偉副教授 ©2011.
網頁切換移轉 JS vs. ASP.NET.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A.
連結資料庫管理系統.
張智星 台大資工系 多媒體檢索實驗室 第九章 小餅乾(Cookies) 張智星 台大資工系 多媒體檢索實驗室.
檔案與磁碟的基本介紹.
第二章 SPSS的使用 2.1 啟動SPSS系統 2.2 結束SPSS系統 2.3 資料分析之相關檔案 2.4 如何使用SPSS軟體.
FTP檔案上傳下載 實務與運用.
網頁切換移轉 JS vs. ASP.NET.
DHCP for W2K.
張智星 台大資工系 MIR實驗室 第二十章 檔案與目錄 張智星 台大資工系 MIR實驗室.
張智星 台大資工系 多媒體檢索實驗室 第十二章 ASP基本介紹 張智星 台大資工系 多媒體檢索實驗室.
程式設計實習課(四) ----C 函數運用----
Topic Introduction—RMI
VS.NET 2003 IDE.
INDEX 資訊學科種子教師研習 課程說明 教學活動計畫.
第一個cordova project Cordova project建立與平台設定,均藉由cli(command line interface來完成 建立project請打開命令提示字元視窗應輸入下列命令 cordova create hello tw.edu.stust.mis.hello HelloWorld.
|07 函數.
HTML – 超連結與圖片 資訊教育.
網頁程式概論 建國科技大學資管系 饒瑞佶 2015/9 V1 2016/4 V2 2016/9 V3.
張智星 台大資工系 MIR實驗室 第十四章 Request 物件 張智星 台大資工系 MIR實驗室.
表格(HTML – FORM).
打地鼠(陣列版).
張智星 清大資工系 多媒體檢索實驗室 Tree Net Construction 張智星 清大資工系.
期末考.
GUI Title and GUI Status
撰寫MATLAB基礎財務程式 柯婷瑱.
微積分網路教學課程 應用統計學系 周 章.
VS.NET 2003 IDE.
引用檔案.
表格(HTML – FORM)
風能 主題:風能 班級:四環工一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即時資料更新機制
4-1 變數與函數 第4章 一次函數及其圖形.
What is “this”? 在物件導向程式設計中,類別的定義就是在說明如果創建了“這個物件”的話,它會具有那些屬性與功能,以及這些功能是如何實現的。 而所謂的“這個物件”就以 this 來表示。 當我們在JavaScript與jQuery中寫 script 程式(函式)時,“誰”呼叫這個函式,這個“誰”就是該函式中所謂的.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
Chapter 4 Multi-Threads (多執行緒).
C語言程式設計 老師:謝孟諺 助教:楊斯竣.
張智星 台大資工系 MIR實驗室 第23章 程式碼的重複使用 張智星 台大資工系 MIR實驗室.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
Presentation transcript:

張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 多媒體檢索實驗室 第十三章 函數與程式碼的重複使用 張智星 jang@mirlab.org http://mirlab.org/jang 台大資工系 多媒體檢索實驗室

本章大綱 大綱 本章介紹 ASP 的函數,並說明如何將 JScript 函數或程式片段定義於一個檔案,以便重複使用。甚至,我們可以使用一個函數定義檔,同時可讓伺服器端和用戶端來呼叫,達到事半功倍之效。 主題 13-1:函數 13-2:函數定義檔的使用

13-1:函數 本小節將介紹函數用途與應用。

用途與作法 用途 若要建立大型應用程式,程式碼要能模組化(Modularized)以提高重複使用度(Reusability)。 作法 注意程式碼的重複性 將重複的部分寫成函數(函式),以便重複使用,省時省力。

範例13-1 主題:JScript 函數範例(計算由 1 至 20 的總和) Webpage: remote host, local host 程式碼重點 說明 類似C語言的語法。 以函數將計算過程模組化。 function sum(n) { var i, total=0; for (i=1; i<=n; i++) total = total + i; return(total); }

範例13-2 主題: VBScript 函數範例(計算由 1 至 20 的總和) Webpage: remote host, local host 程式碼重點 function sum(n) dim i, total total = 0 for i = 1 to n total = total + i next sum = total end function

JScript 和 VBScript 的不同 JavaScript 或 JScript 使用 var 來定義局部變數,VBScript 則是使用 dim 定義局部變數。 若函式沒有輸入引數,JScript 在呼叫此函式時,仍須在函式名稱後面加上小括弧,VBScript 則可不加括弧。

13-2:函數定義檔的使用 本小節簡單介紹如何使用函數定義檔。

函數定義檔 若要一再重複使用多個函數,可先將這些函數寫在函數定義檔,然後再將檔案導入 asp 網頁。 導入方法請見下頁。

如何引入函式定義檔? 方法一:使用 Server-side include (SSI) 程式碼: 說明: filename 是檔案的實體位置,需使用相對路徑。 說明:URLpath 是檔案的網址。 方法二:一箭雙雕法 說明:寫一份函式定義檔,可在伺服器和用戶端共用。 <!--#include file="filename"--> <!--#include virtual="URLpath"--> <script language=jscript runat=server src=filename></script>

SSI SSI 檔案的內容,也可包含 HTML 或用戶端的 JavaScript、VBScript 等。 特別注意: SSI 並不是 ASP 的一部份:它透過 IIS/PWS 的 ssinc.dll 來處理,而 ASP 是由 asp.dll 來處理。 SSI 可以是巢狀的(Nested) :被包含的檔案仍可再包含其他檔案。 SSI 是在 ASP 前執行:不可用 ASP 產生被包含的檔案名稱。 SSI 不可寫在 <% ... %> 的標記內。 被 SSI 所導入的檔案,也可包含 HTML 的標籤。

範例13-3 (1/2) 主題:顯示現在時間(伺服端與客戶端分別引入不同定義檔) Webpage: remote host, local host 程式碼重點 說明 用 client-side include 和 server-side include 加入一些與時間相關的函數。 引入timeFunctionRunAtClient.js和timeFunctionFunAtServer.inc兩個函式定義檔。 可使程式碼較為簡潔。 <script src="timeFunctionRunAtClient.js"></script> <!--#include file="timeFunctionFunAtServer.inc"-->

範例13-3 (2/2) timeFunctionRunAtClient.js (client-side include) 程式碼重點 timeFunctionRunAtServer.inc (server-side include) function currentTime(){ …… } function currentDay(){ …… } <% function currentTime(){ …… } function currentDay(){ …… } %>

範例13-4 (1/2) 主題:顯示現在時間(客戶端及伺服器端共用同一份定義檔) Webpage: remote host, local host 程式碼重點 說明 客戶端及伺服器端都能執行這些函數。 方法很像 JavaScript 在用戶端所用的 client-side include。 無論是 client-side include 或是 server-side include,所加的函數定義檔都是 timeFunction.js。 <script language=jscript runat=server src="timeFunction.js"></script>

範例13-4 (2/2) 主題:timeFunction.js (引入時間函數的定義) 連結:remote host, local host 程式碼重點 說明 可同時使用在伺服器與用戶端。 適用此方法的函數定義檔,不可以包含 HTML 原始碼。 function currentTime(){ …… } function currentDay(){ …… }