这是字符:"*+-/";
Javascript getElementById
我如何"randt"
成为1个随机字符?
所以,如果我输入:
document.getElementById("sms-text").innerHTML = "" + random2 + randt;
适用于前"22*"
或"51+"
我该怎么做?
答案 0 :(得分:2)
如果我理解你的问题,你会得到0-3的随机数字,然后找到那个位置的字符;
var signs = "*+-/";
var signId = Math.floor(Math.random() * signs.length);
var sign = signs.charAt(signId);
答案 1 :(得分:2)
var str = "*+-/";
var random_char = str[Math.floor(Math.random() * str.length)];
正如其他答案所指出的那样,str.charAt()
也会起作用。
答案 2 :(得分:1)
使用Math.random()
和Math.floor()
的组合非常简单:
var chars = "*+-/",
randt = chars[Math.floor(Math.random() * 4)];
请注意,如果您不知道4
中有多少字符,则可以将chars.length
替换为chars
。
答案 3 :(得分:1)
只需抓住一个从0到字符串长度的随机数,然后像这样切出char
var chars = "+-/";
var char = chars[Math.floor(Math.random() * chars.length)];
使用char
将是随机字符
或者你可以像这样将 然后在任何创建的字符串中,您可以像这样使用String.prototype.randChar = function()
{
return this[Math.floor(Math.random() * this.length)];
}
char = "+-.".randChar();
答案 4 :(得分:1)
这与您提到before的问题基本相同,只是区别在于您使用的是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);
答案 5 :(得分:0)
var randt=['*','+','-','/'][Math.floor(Math.random()*4)];