这次课程主要讲的是VS2008的环境问题,其中包含
- JavaScript Intellisense JavaScript智能提示
- JavaScript Comment JavaScript注释
1、JavaScript Intellisense功能
- 自动识别变量的运行时类型
- 自动判断方法返回类型
- 自动识别引用的JS文件内容
- Microsoft AJAX Library支持
有几个详细的说明
- 使用javascript的src引入的js文件中的方法,可以生成智能提示
- 如果要引入支持Asp.Net Ajax Library支持的js文件,需要在js文件头中加入
// / <reference name="MicrosoftAjax.js"/>
- 引入一个WebService也可以生成智能提示。
- VS2008的智能提示功能可以检测代码的逻辑性。如if语句中的判断等于的符号写成了=号,那么会给出消息提示
2、JavaScript Comment功能
类似于.net中的注释功能,使用XML形式为JavaScript的各成员做注释,供VS 2008的JavaScript Intellisense使用,并用于自动生成文档。
- 提供成员的描述信息
< summary >
Description
</ summary > - 提供对于参数的描述信息
< param name ="parameterName“ mayBeNull=" true|false“
optional ="true|false“ integer=" true|false"
type =“ParameterType (Number, String, etc)“
parameterArray ="true|false“ domElement=" true|false“
elementType ="ArrayElementType“
elementInteger=" true|false“
elementDomElement ="true|false“
elementMayBeNull=" true|false" >
Description
</ param > - 对方法的返回值进行描述
< returns type ="ValueType“
integer=" true|false“
domElement =“true|false”
mayBeNull ="true|false”
elementType=" ArrayElementType“
elementInteger ="true|false“
elementDomElement=" true|false“
elementMayBeNull ="true|false" >
Description
</ returns > - 对属性的值进行描述
< value type ="ValueType" integer ="true|false“
domElement=" true|false“
mayBeNull ="true|false“
elementType=" ArrayElementType"
elementInteger ="true|false“
elementDomElement=" true|false“
elementMayBeNull ="true|false" >
Description
</ value > - 对于域变量或枚举项进行注释
< field name =“fieldName“ type ="FieldType“
integer=" true|false“ domElement ="true|false“
mayBeNull=" true|false“ static =“true|false”
elementType ="ArrayElementType“
elementInteger=" true|false“
elementDomElement ="true|false“
elementMayBeNull=" true|false" >
Description
</ field >
详细说明一下里面的属性的功能。
mayBeNull:判断值是否可以为空值。
optional:是否是必填参数。
integer:一个变量如果是Number类型,决定这个类型是否是整数
parameterArray:变量是否是一个Array
domElement:判断变量是否是一个文档模型里的成员。
elementType:如果变量是一个数组,那么描述这个数组里的成员类型。
elementInteger:如果数组成员是Number类型,描述这个数组里的成员是否是整形。
elementDomElement:描述数组成员是否是文档对象。
elementMayBeNull:描述数组成员可否为空
static:描述类成员是否是静态的
注意:在VS2008中javascript的描述应该写在方法的{符号之后,包括域变量或枚举项描述写在构造函数的{符号之后,如下例
Demo.MyCommentedClass
=
function
()
...
{
/// <summary>It's MyCommentedClass's description</summary>
}
Demo.MyCommentedClass.prototype = ... {
myMethod : function(p) ...{
/// <summary>It's MyCommentedClass's "myMethod" method</summary>
/// <param name="p" type="Number" integer="true" mayBeNull="true">An integer</param>
/// <returns type="Demo.MyEnum">Just try it</returns>
},
get_myDiv : function() ...{
/// <summary>That's an property</summary>
/// <value type="Object" domElement="true">This returns an div element</value>
}
}
/// <summary>It's MyCommentedClass's description</summary>
}
Demo.MyCommentedClass.prototype = ... {
myMethod : function(p) ...{
/// <summary>It's MyCommentedClass's "myMethod" method</summary>
/// <param name="p" type="Number" integer="true" mayBeNull="true">An integer</param>
/// <returns type="Demo.MyEnum">Just try it</returns>
},
get_myDiv : function() ...{
/// <summary>That's an property</summary>
/// <value type="Object" domElement="true">This returns an div element</value>
}
}