在我們使用VS2008(Visual Studio 2008)中,排除語言(C#, VB.NET)等不談,其中最重要的就是IntelliSense功能,而在VS2008裡你可以發現,不論是本身的語言支援外,連CSS與JavaScript都有支援。而IntelliSense包括了四項功能:
- 列出成員( List Members )
- 參數資訊( Parameter Information )
- 快速諮詢( Quick Information )
- 自動完成文字( Complete Word )
這四項功能,我認為每一樣都很重要,而且非常實用。
其中VS2008之中JavaScript支援是指原JavaScript內建物件成員的支援,如Array、String、Math、Date、Number等內建物件,這提供我們在撰寫JavaScript程式碼時極大的便利性,這一點是一般文字編輯器所做不到的。
But,如果是我們自行撰寫的JavaScript Function,是否也能像原JavaScript內建物件一樣支援IntelliSense,這就是今天的重點。
in-line撰寫JavaScript Function
in-line就是說在HTML中的<head>...</head>區段中加入<script type ="text/javascript">...</script>區段,然中在<script>區段中加入自行撰寫的JavaScript Function:
1 | function showName(firstName, lastName) { |
2 | alert( "First Name :" + firstName + ", Last Name :" + lastName); |
當你稍後引用時,就能發現VS2008會自動將你撰寫的Function showName()資訊加入IntelliSense之中,讓你享受IntelliSense所帶來的方便。不過在內嵌的JavaScript IntelliSense目前只能提供「參數個數」及「名稱資訊」。
在外部*.js中提供快速諮詢及參數資訊之說明文字提示
這部份我先說,我也不知道為什麼VS2008中在內嵌的JS裡無法使用以下提供的方法,以下提供的方法只能在外部獨立的JavaScript檔案使用。這個方法正式名稱為「XML Code Comment」(XML程式碼註解)。
我們先在外部*.js中新增Function,然後在Function
內加入XML程式碼註解。
- ///<summary></summary>,快速諮詢資訊
- ///<param name="參數名稱" /></param>
- ///<returns type="型別"></returns>,回傳值資訊
Tag之前都必須加上三條斜線(///),不可省略。
01 | function showNameTime(firstName, lastName) { |
05 | alert( "First Name :" + firstName + ", Last Name :" + lastName ); |
10 | var date = new Date(); |
11 | var dateTime = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds(); |
現在把這個外部*.js引用到使用的網頁中(*.html, *.aspx),然後在需要使用的地方打上Function Name,你應該就可以看到與內嵌不一樣的效果,是完整度更高的JavaScript IntelliSense。
多個*.js檔案之間的JavaScript IntelliSense參考
既然這個 「XML程式碼註解」的方法,只能使用在「外部*.js」,那如果是在多個*.js的情況下,那是否可以「互相」參考後來產生對方*.js的JavaScript IntelliSense,答案是可以。
showName.js裡有Function showName(),今天我有另一個getTime.js需要使用到showName.js,我想讓getTime.js支援showName.js的JavaScript IntelliSense,你只需要在getTime.js的第一行加入:
然後你就能發現在撰寫getTime.js時也能參考到showName.js裡的IntelliSense,而且這種參考是可以雙向的,在showName.js中如果需要使用到getTime.js的Function,你也能在showName.js的第一行使用這個XML程式碼註解的方法。
強制更新JavaScript IntelliSense
也就是有時候如果你已經依照上述方法設定完成,但VS2008還來不及更新JavaScript IntelliSense,我們也可以手動更新這個JavaScript IntelliSense:
「編輯」→「IntelliSense」→「更新JScript IntelliSense」
這樣就可以命令VS2008立即更新JavaScript IntelliSense,讓我們馬上可以使用JavaScript IntelliSense所帶來的便利。
沒有留言:
張貼留言
感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。