在JavaScript中获取随机值1或3

在JavaScript中获取随机值1或3,javascript,Javascript,您能告诉我如何在每次加载文档时随机创建1或3个(不是范围,只有1或3个)吗?我已经试过了,但它返回的是字符串而不是数字。我应该将它们解析为数字,还是有更好的方法 var num = []; var chances = "13"; for (var i = 0; i <1; i++) { num.push(chances.charAt(Math.floor(Math.random() * chances.length))); } console.log(num); var num=[

您能告诉我如何在每次加载文档时随机创建1或3个(不是范围,只有1或3个)吗?我已经试过了,但它返回的是字符串而不是数字。我应该将它们解析为数字,还是有更好的方法

var num = [];
var chances = "13";
for (var i = 0; i <1; i++) {
  num.push(chances.charAt(Math.floor(Math.random() * chances.length)));
}

console.log(num);
var num=[];
var=“13”;

for(var i=0;iSince
Math.random
返回一个介于
0
(包含)和
1
(排除)之间的数字:

…虽然您的代码使用的是
chancess.length
很好(因为
chancess.length
2


还请注意,
for(var i=0;i<1;i++)
将只运行一次,这使得循环有些毫无意义。:-

以上代码作为一个整体的实际最终目标是什么?我已经发现了代码中的一些问题,但是如果我知道您真正想要代码做什么,我可能会更有帮助。如果您想要的数字已经变成字符串,
var num=+chancess[Math.floor(Math.random()*chances.length)]
谢谢T.J.Crowder,但是我现在得到了
0
1
!我需要的是
1
3
@Behseini,使用
value
作为字符串的索引,或者
array
如果输入像
[1,3]
@Behseini:如果需要1或3,请参阅答案中的第一个代码块。如果需要
中的第一个或第二个字符
,请参阅答案中的第二个和第三个代码块,并将
.charAt
一起使用(尽管原始代码仅适用于该用例)。既然你忽略了我上面的问题,我实在帮不了你。
var value = Math.random() < 0.5 ? 1 : 3;
var value = Math.random() < 0.5 ? 0 : 1;
var value = Math.floor(Math.random() * 2);