如何在VBScript中搜索数组中的IF语句
我正在尝试构建一个VBScript函数,该函数将具有一个IF语句,在该语句中,我要确定指定值和填充数组的值之间是否存在值匹配。下面是一段简化的代码片段,用于了解通用功能如何在VBScript中搜索数组中的IF语句,vbscript,Vbscript,我正在尝试构建一个VBScript函数,该函数将具有一个IF语句,在该语句中,我要确定指定值和填充数组的值之间是否存在值匹配。下面是一段简化的代码片段,用于了解通用功能 Dim val1 Dim arr1(5) val1 = 1234 arr1(0) = 1111 arr1(1) = 2222 arr1(2) = 1234 arr1(3) = 1444 arr1(4) = 1337 if val1 = '''some value in the array (in this case arr1
Dim val1
Dim arr1(5)
val1 = 1234
arr1(0) = 1111
arr1(1) = 2222
arr1(2) = 1234
arr1(3) = 1444
arr1(4) = 1337
if val1 = '''some value in the array (in this case arr1(2))''' then
'''do nothing, end if'''
else
'''engage the API in the object model I'm working in to perform a function'''
end if
我不确定我在想要查看
val1
是否在arr1
内的区域中放置了什么。如果它在其中,我想结束循环。如果它不在其中,我想在我正在使用的对象模型中执行一些功能。有人能帮我理解if语句的语法吗 您可以简单地循环数组,并在找到要查找的内容后停止循环
Dim val1
Dim arr1(5)
val1 = 1234
arr1(0) = 1111
arr1(1) = 2222
arr1(2) = 1234
arr1(3) = 1444
arr1(4) = 1337
dim valueInArray
dim foundIt
foundIt = false 'initialize on false
'find the value in the array
for each valueInArray in arr1
if valueInArray = val1 then
foundIt = true
exit for 'stop looping once we found it
end if
next
if not foundIt then
'''engage the API in the object model I'm working in to perform a function'''
end if
您还可以使用dictionary对象并使用
Exists
方法来确定该列表中是否有值,但对于这样一个简单的情况,这将是开销。如果您想在数组中搜索,则必须依赖循环。如果切换到dictionary,则可以使用.Exists方法检查值,而无需任何循环。看看有很多关于这个问题的现有答案。如果不是的话,我建议你把答案贴在那里。