Javascript字符串格式化 - 替换保存在变量中的字符串

时间:2015-09-18 09:32:23

标签: javascript string.format

任务是从1到99的简单写入数字,并将每个数字替换为num (mod 3) =0,每个num (mod 5) =0 -> matnum ( mod 3=0 && mod 5=0 )与每个席位,其他所有数字保持不变。这很简单,但格式化很糟糕,所以我想这样做:在每个数字之间插入一个空格,并将每个“特殊”单词(可分为3,5或两者)放在一个单独的行上。我知道我必须使用string.prototype.format但究竟是怎么回事?这是我目前的代码:

<html>
<body>

<p>Click the button to join two strings into one new string.</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>


function myFunction() {
     var text = []; 
      var res = " ";   

     for (i=1; i<100; i++){
   if (i%3 == 0 && i%5 == 0){
        text[i]= "SachMat ";
                }
       else if (i%3 == 0){
        text[i]= 'sach ';
                }
        else if (i%5 == 0){
        text[i]= 'mat ';
                }

        else {
        text[i]= i;                
                }       
      var res = res.concat(text[i]);
       }


 document.getElementById("demo").innerHTML = res;
}
</script>

</body>

</html>

1 个答案:

答案 0 :(得分:1)

试试这个

function myFunction() {
    var text = []; 
    var res = " ";   

    for (i=1; i<100; i++){
        if (i%3 == 0 && i%5 == 0){
            text[i]= "<br/>SachMat<br/>";
        } else if (i%3 == 0) {
            text[i]= 'sach ';
        } else if (i%5 == 0){
            text[i]= 'mat ';
        } else {
            text[i]= i;                
        }       
        res = res.concat(' ' + text[i]);
    }
    document.getElementById("demo").innerHTML = res;
}