0
var count=1;
var temp="";
var end= window.prompt('enter the length');
var b = parseInt(end);

while(true){
  temp+="-";
  count++;
  if(count>b&&end!=null){
console.log("enter:" +end+ "= " + temp );
break;
 }
}

ユーザーが入力する数字ごとに「-」の出力を与えると思われるこのコードがあるので、ユーザーが2を入力すると、出力は「--」になります。しかし、ユーザーが文字列または数字のゼロを入力すると、出力は単に "-" になるはずです。

4

2 に答える 2

1

コメントが言うように、これは本当にあなたが望むことをするためのより簡単な方法です、isNaNあなたが実際に数を得るのを確認するためにあなたが必要とするものです。

var length = parseInt(window.prompt('enter the length'), 10);
alert(new Array(isNaN(length) ? 2 : length  + 1).join('-'));
于 2012-12-09T00:48:52.170 に答える
0
var count = 1;
var temp = "";
var end = window.prompt('enter the length');
var b = parseInt(end);

while (true) {
    temp += "-";
    count++;

    // if the user entered a valid integer that is not 0
    if (!isNaN(b) && b !== 0) {
        if (count > b && end != null) {
            console.log("enter:" + end + "= " + temp);
            break;
        }

    // else the user entered 0 or some other input that isn't an integer
    } else {
        console.log("enter:" + end + "= -");
        break;
    }
}​

フィドル

アラートをいじる

于 2012-12-08T23:47:27.050 に答える