第1课 LotusScript语法
1.1 LotusScript的语法:
1.1.1 语法概要:
√ 语句行结束为行结束,无须特殊符号
√ 一条语句占有多行时,使用“ _”作为行结束
√ 同一行录入多条语句时,使用“:”分隔语句
√ 语法类似VB,大小写不敏感
√ 注释:
• 单行:’
• 多行:%Rem …%End Rem
√ 基本变量类型赋值:“=”
√ 对象赋值:“Set ObjectName = ”
1.1.2 内置常量:
√ NOTHING:
• 为Object的默认值
• 使用Is来判断(不可使用“=”)
kuala lumpur
√ NULL speed demon
• 使用IsNull()来判断(不可使用“=”)
√ PI
• 3.1415926…
√ TRUE/FALSE
• LotusScript内部使用-1代表TRUE;使用0代表FALSE
• 任何非0数,即为TRUE
√ EMPTY
• 对String类型:””
• 对数字类型:0
• 使用IsEmpty()判断(参见Notes Help)
二人世界 英文> 当对NotesItem之Variant值判断时,IsEmpty(Var(0))总返回True,即使域值为””
> 使用Var(0) = “”判断!
• 该EMPTY名称不可用以赋值!
1.1.3 基本变量类型
√ 数字:
• 非十进制数
> Byte(1-Byte)
> 2进制:B
° 如:B10010100, %B10010100
> 8进制:O
° 如:O711423, &O711423
> 16进制:H
° 如:H459f, &H459f
• 整数:
> Integer(2-Byte)
° 强制符号:%
> Long(4-Byte)
° 强制符号:&
> 如:7, %77, &777
• 浮点数:
> Single(4-Byte)
° 强制符号:!
> Double(8-Byte)
° 强制符号:#
> 如:7.7, !70.7, #70.7E+02
日语听力mp3下载
√ Currency:(8-Byte)
• 强制符号:@
√ String:(2-Byte)
• 强制符号:¥
• 使用符号:
> “”
> {}
> ||
√ Boolean:(2-Byte)
√ Variant:
• 可以表示的数据类型:
> 可以代表以上任何基本数据类型
> 可以代表以上任何基本数据类型的Array
pfa> 可以代表Date/Time类型 lec
° LotusScript没有专用的Date/Time类型的声明及赋值
° 可以使用以下函数生成Date/Time类型
− Cdat(), DateNumber(), DateValue()
− Date(), Now(), Today()
− Year(), Month(), Day(), Houer(), Minute(), Second(), Weekday() > 代表Object类型
> NULL、NOTHING或Empty值
• 在同其它数据类型交换数据时,使用数组下标
> 如:tmp_strName = tmp_varFieldVal(n)
• 判断Variant是否为空值
> 不可使用IsNull(), IsEmpty()方法,当Variant下标超出时,运行报错!
惘> 使用:Ubound(), Lbound()及IsArray()方法判断
1.1.4 基本数据类型的转换
√ CBool, CByte, CCur, CDat, CDbl, CInt, CLng, CSng, CStr, Cvar
√ String <-> Variant
√ Implode(), Join(), Split()
1.1.5 常用数据类型的判断函数
√ IsNull(), IsEmpty, IsNumber(), IsNumberic(), IsObject(), IsUnKown(), IsDate()
1.1.6 变量的声明:
√ 语法:
• {Dim|Public| Private}varName1[ As dataType
], varName2 [ As dataType], ... √ 声明中的关键字:
• Dim(声明Private作用域的变量)
• Static(声明静态变量)
• Public(声明Public作用域的变量)
• Private(声明Private作用域的变量)
√ 完整声明:
• 如:Dim tmp_strName As String, tmp_strTitle As String 3dmax培训
√ 隐含声明:
• 如:Dim tmp_strName¥, tmp_strTitle¥
• 如:在未声明时使用:myString¥ = “String Value”
√ 定长字符串声明:
• 如:Dim tmp_strName As String * 10
1.1.7 数组的声明
√ 语法:
• {Dim|Public| Private}varName1[Length_X, Length_Y] [As dataType]
• 定长数组:Dim tmp_strArray(Length) As String laraine
• 变长数组:Dim tmp_strArray() As String
• 重定义数组长度:ReDim tmp_strArray(Length)
> 在动态数组,未通过ReDim声明前,无法使用之!
> Variant类型的变量本身,就可以是变长数组,且可以直接将列表值赋于之,而使用
√ List类型
• List为1维的数组
1.1.8 运算符号
G1-1
1.1.9 判断符号
G1-2 1.1.10 数位操作符号:
G1-3 1.1.11 逻辑连接符号:
G1-4
1.1.12 特殊符号的运用:
√ 字符串:
• 连接符:
> +
° 如:”100” + “200” ‘Result: “100200”
> &(强制连接)
° 如:100 + “200” ‘Result: 300
° 如:100 & “200” ‘Result: “100200”
• 匹配检验:
> Like
° 语法:
− stringExpr Like patternString
G1-5
° 如:挑出1 ̄100之间包含3,但不包含2的数字
− For x = 1 To 100
If CStr(x) Like "[!2]3" Then Print x
Next x
− 'Results: 13 33 43 53 63 73 83 93
√ Object
• Is:判断Object是否相同
• IsA:判断Object的继承及派生关系
1.1.13 Function/Sub
√ 参数定义:
• [ByVal] paramName [() | List] [As dataType]
> ByVal:使用“值传递”
> 默认是“地址传递”
> paramName()代表传递的参数是数组
√ Function:(有返回值)
• 定义语法:
> [Public | Private] [Static] Function functionName [(parameters)] [As dataType]
• 返回值:
ivg> functionName = Return Value
• 子程序返回: