用于循环的javascript&;功能

用于循环的javascript&;功能,javascript,function,for-loop,Javascript,Function,For Loop,我试图创建一个带有按钮的页面,该按钮在单击以使用for循环时调用函数。需要循环代码5次并返回如下页面: $ $$ $$$ $$ $ 我正在努力想办法解决这个问题,很少有例子不只是关注整数。她就是我现在的位置 <html> <head> <button onclick="myFunction()">Click This Button</button> </head> <body> <p id="dollar

我试图创建一个带有按钮的页面,该按钮在单击以使用for循环时调用函数。需要循环代码5次并返回如下页面:

$
$$
$$$
$$
$

我正在努力想办法解决这个问题,很少有例子不只是关注整数。她就是我现在的位置

<html>
<head>
  <button onclick="myFunction()">Click This Button</button>


</head>

<body>
  <p id="dollar"></p>

  <script type = "javascript/text">
    function myFunction() {
    var a;
    if(a===0) || (a===4) {
        document.write("$" + <br />);
    }
    if(a===1) || (a===3) {
        document.write("$$" + <br />);
    }   
    if (a===3) {
        document.write ("$$$" + <br />);
    }
    for (a = 0; a < 5; a++){

    }

    document.getElementById("dollar").innerHTML = text;

    }

  </script>


</body>
</html>

点击这个按钮

函数myFunction(){ var a; 如果(a==0)| |(a==4){ document.write(“$”+
); } 如果(a==1)| |(a==3){ document.write(“$$”+
); } 如果(a==3){ document.write(“$$$”+
); } 对于(a=0;a<5;a++){ } document.getElementById(“美元”).innerHTML=text; }
你的可操作的东西在你的循环之外

    function thisThing(){
        var finalIs =""
        for (a = 0; a < 5; a++){    
            if((a==0) || (a==4)) {
              finalIs += "$<br />";
           }
          if (a==3) {
                finalIs += "$$$<br />";
            }
          if((a==1) || (a==3)) {
                finalIs += "$$<br />";
            }   


        }
document.getElementById("dollar").innerHTML = finalIs;
        }
函数thisThing(){
var finali=“”
对于(a=0;a<5;a++){
如果((a==0)| |(a==4)){
决赛+=“$
”; } 如果(a==3){ Finalize+=“$$$
”; } 如果((a==1)| |(a==3)){ Finalize+=“$$
”; } } document.getElementById(“美元”).innerHTML=finalize; }
此外,您不需要声明“a”,因为您是在启动循环时声明它的。 此外,您的文档写入声明不正确。您将它们设置为一个变量。事实并非如此。这只是绳子的其余部分

编辑:这个最终版本非常完美。所有错误都已修复。
您可以自己查看差异。

例如,使用值数组:

var patterns = ['$', '$$', '$$$', '$$', '$'];
function myFunction() {
    var text = '';
    for (var i = 0; i < patterns.length; i++)
      text+= patterns[i] + '<br />';

    document.getElementById("dollar").innerHTML = text;
}

这里有一种使用单循环、临时变量和数组的简单方法:

函数myFunction(){
对于(VarA=1;a3)x=6-a;
document.getElementById(“美元”).innerHTML+=Array(x+1).join(“$”)+”
; } }
单击此按钮

这是一个固定版本,使用的是您在上面使用的解决方案。 然而,安克泽特的答案是一个更干净的方法

<html>
<head>
  <!-- script in head -->
  <script type = "javascript/text">
    function myFunction() {
      var a;
      var text = "";

      for ( a = 0; a < 5; a++ ){
        // if statements within the loop
        if( a === 0 || a === 4 ) { // All conditionals must be within one set of parenthesis. You can have others within, but all must be contained in one.
          text += "$<br />";
        }
        if( a === 1 || a === 3 ) {
          text += "$$<br />";
        }   
        if ( a === 2 ) {
          text += "$$$<br />";
        }
      }
      document.getElementById( "dollar" ).innerHTML = text;
    }
  </script>
</head>
<body>
  <!-- button in body -->
  <button onclick="myFunction()">Click This Button</button>
  <p id="dollar"></p>
</body>
</html>

函数myFunction(){
var a;
var text=“”;
对于(a=0;a<5;a++){
//循环中的if语句
如果(a==0 | | a==4){//所有条件必须在一组括号内。可以在其中包含其他条件,但所有条件必须包含在一组括号内。
text+=“$
”; } 如果(a==1 | | a==3){ text+=“$$
”; } 如果(a==2){ text+=“$$$
”; } } document.getElementById(“美元”).innerHTML=text; } 点击这个按钮


此代码按您希望的方式工作。但是,不建议这样做。当您将按钮放在头部时,您的html代码不正确;当您将()放在头部时,您的javascript条件不正确。希望这有助于


函数myFunction(){
var a;

对于(a=0;a将此代码用于任何数字5、7、9或

  function myFunction(cnt) {
    var text = '';
    for (var i = 0; i < cnt; i++){
        if(i<(cnt/2)){
            for (var j = 0;  j< (i+1); j++){
                text+= "$";
            }
            text+= '<br />';
        }
        else{
            for (var j = 0;  j< (cnt-i); j++){
                text+= "$";
            }
            text+= '<br />';
        }
    }
    document.getElementById("dollar").innerHTML = text;
}
结果:

$
$$
$$$
$$$$
$$$$$
$$$$$$
$$$$$
$$$$
$$$
$$
$
例子
函数callmyFunction(){
var tmp=document.getElementById(“countDollar”).value;
myFunction(+tmp);
}
函数myFunction(cnt){
var text='';
对于(变量i=0;i如果(如果初学者
不能在头脑中。下一步..使用
文档。如果在页面加载后使用,写入
将抹掉整个页面。我不确定为什么这个问题会被否决。有一个关于OP试图实现什么的明确声明,OP正在展示他们到目前为止的工作并寻求帮助。这似乎很好对我来说。当
a===2
的时候呢?不要使用
文档。写
并把你的
拿出来。@j08691“把你的按钮拿出来”:
text
在这里仍然没有声明,并且没有说明当
a==2
时应该发生什么。仍然会失败,因为每次
write
都会删除以前的
write
,元素在一次
write
之后也不存在。这是真的。我修正了。我想知道,哪个部分更简单,这是:
x=a;if(x>3)x=6-a;
,或者这个:
数组(x+1)。加入(“$”
。从初学者的角度来看,我的意思是。。。
  function myFunction(cnt) {
    var text = '';
    for (var i = 0; i < cnt; i++){
        if(i<(cnt/2)){
            for (var j = 0;  j< (i+1); j++){
                text+= "$";
            }
            text+= '<br />';
        }
        else{
            for (var j = 0;  j< (cnt-i); j++){
                text+= "$";
            }
            text+= '<br />';
        }
    }
    document.getElementById("dollar").innerHTML = text;
}
    myFunction(11);
$
$$
$$$
$$$$
$$$$$
$$$$$$
$$$$$
$$$$
$$$
$$
$