2

これは文字です:"*+-/";

Javascript getElementById

"randt"1つのランダムな文字になるにはどうすればよいですか?

だから私がタイプした場合:

document.getElementById("sms-text").innerHTML = "" + random2 + randt;

"22*"または"51+"

どうすればいいのですか?

4

6 に答える 6

2

あなたの質問を正しく理解できれば、0 から 3 の乱数を取り、その位置にある文字を見つけてください。

var signs = "*+-/";

var signId = Math.floor(Math.random() * signs.length);

var sign = signs.charAt(signId);
于 2011-01-01T21:35:47.797 に答える
2
var str = "*+-/";
var random_char = str[Math.floor(Math.random() * str.length)];

他の答えが指摘するように、str.charAt()うまくいくでしょう。

于 2011-01-01T21:36:45.607 に答える
1

これは基本的に前に尋ねた質問と同じですが、のinnerHTML代わりに使用している違いがありますdocument.write。文字列を生成する方法は同じなので、前の回答の関数を使用できます。

function makeid(lastNumber) {
  var possible = "*+-/";
  return lastNumber + possible.charAt(Math.floor(Math.random() * possible.length));
}

使用法:

document.getElementById("sms-text").innerHTML = makeid(random2);
于 2011-01-01T21:55:27.193 に答える
1

0から文字列の長さまでの乱数を取得して、そのように文字を切り取るだけです

var chars = "+-/";
var char = chars[Math.floor(Math.random() * chars.length)];

使用charはランダムな文字になります

あるいは、次のように rand メソッドをプロトタイプに追加することもできます

String.prototype.randChar = function()
{
    return this[Math.floor(Math.random() * this.length)];
}

そして、作成された文字列内で次のように使用できます

char = "+-.".randChar();
于 2011-01-01T21:37:34.177 に答える
1

Math.random()これは、との組み合わせで行うのは非常に簡単ですMath.floor()

var chars = "*+-/",
    randt = chars[Math.floor(Math.random() * 4)];

に含まれる文字数がわからない場合は、4に置き換えることができることに注意してください。chars.lengthchars

于 2011-01-01T21:35:44.810 に答える
0
var randt=['*','+','-','/'][Math.floor(Math.random()*4)];
于 2011-01-01T21:36:55.307 に答える