如何写一个变量一定次数?

时间:2011-01-20 06:04:28

标签: javascript repeat

var x=5
var char="Hi!

有没有办法让JS在html元素中写入char x次?

<span>Hyper guy wants to tell you 
<script>
var x=5;
var char="Hi!;
document.write(char) and repeat x times;
</script>
</span>

使用document.write的问题在于它会删除整个页面,所以我如何在上下文中插入它?

4 个答案:

答案 0 :(得分:2)

使用循环5次循环,每次添加'嗨!'到最后。

var x = 5;
var char = '';
while (x--) {
    char += 'Hi!';
}
// write once
document.write(char);

或者,你可以只写5次:

var x = 5;
var char = 'Hi!';
while (x--) {
    document.write(char);
}

根据你的选择,虽然我更喜欢第一个(你弄脏文件越少越好)。

答案 1 :(得分:1)

试试这个:

<span>Hyper guy wants to tell you 
<script type="text/javascript">
var x=5;
var c="Hi!"; //close the quotes.
for (;x>=0;--x)
    document.write(c);
</script>
</span>

document.write(..)如果以正确的方式使用,则不会删除整个页面的内容。

答案 2 :(得分:0)

真的?我不知道你在哪里想到它首先擦除页面。

当我在FF3中执行以下操作后,在Hi!之后添加缺少的结束语:

<html>
    <head></head>
    <body>
        <span>
            Hyper guy wants to tell you
            <script type="text/javascript">
                var x=5;
                var chars="Hi! ";
                var i;
                for (i = 0; i < x; i++) document.write(chars);
            </script>
        </span>
    </body>
</html>

我明白了:

Hyper guy wants to tell you Hi! Hi! Hi! Hi! Hi! 

答案 3 :(得分:0)

在页面中创建要插入文本的HTML元素
使用document.getElementById获取元素并使用.innerHTML .text属性将文本附加到元素

http://www.tizag.com/javascriptT/javascript-innerHTML.php

示例:

//add this empty span in the HTML page
<span id="newText"></span>

<script type="text/javascript">
var x=5, count;
var char='Hi!', resultString = '';
for(count=0;count<x;count++)
{
resultString = resultString + char;
}
document.getElementById('newText').innerHTML = resultString;
</script>