首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >经典asp循环函数

经典asp循环函数
EN

Stack Overflow用户
提问于 2013-01-04 11:11:52
回答 3查看 1.8K关注 0票数 0

下面的代码是将font标签添加到每个字符,但它不起作用

代码语言:javascript
复制
Function AddFontTag (counter)
    Do While Len (counter) < 7
        newStr = newStr & "<font>" & Left (counter, i) & "</font>"
        i = i + 1
    Loop
    AddFontTag = newStr
End Function

因为我不精通经典的asp,比如变量作用域,语法。有人知道上面的代码有什么问题吗?

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-01-04 12:45:59

您的do..while循环是一个无限循环-假设counter是一个字符串变量,它的长度永远不会改变,所以如果在进入函数时Len(counter)小于7,它将始终小于7,因此您的函数永远不会退出。

您的newStr变量是未定义的-这在VBScript中是有效的,但这是非常糟糕的做法,并且它是无数错误的来源。它是一个全局变量还是应该是一个局部变量?(它看起来像是本地的。)

票数 2
EN

Stack Overflow用户

发布于 2013-01-04 17:17:27

我不确定7个字符的限制如何适用,但对于一般的方法,以下内容将满足您对任何长度字符串的需要:

代码语言:javascript
复制
function AddFontTag(byval str)
    AddFontTag = Empty
    do while len(str) <> 0
        ' get next character
        dim c: c = left(str, 1)
        ' reduce original string
        str = right(str, len(str) - 1)
        ' build up output string
        AddFontTag = AddFontTag & "<font>" & c & "</font>"
    loop
end function

示例

代码语言:javascript
复制
dim test: test = AddFontTag("a test")
Response.Write test

会给你带来

a test

如果您只想将其应用于长度小于7的字符串,则可以添加

代码语言:javascript
复制
if len(str) > 6 then
    exit function
end if

在while循环之前或

代码语言:javascript
复制
str = left(str, 6)

如果您只想将它应用于任意长度字符串的前6个字符

票数 1
EN

Stack Overflow用户

发布于 2013-01-05 02:17:26

您的代码正在循环,没有退出循环的条件。试试这个。希望能有所帮助。

代码语言:javascript
复制
Function AddFontTag (counter)
dim i,newStr,max
max=7
    Do While Len (counter) < max
        newStr = newStr & "<font>" & Left (counter, i) & "-" & "</font>"
        i = i + 1
        if i = max-1 then exit Do
    Loop
    AddFontTag = newStr
End Function
'to check the results
response.write AddFontTag ("params")

你会得到<font>-</font><font>p-</font><font>pa-</font><font>par-</font><font>para-</font><font>param-</font>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14150565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档