JSFiddle - React, Tailwind, and code Playground
JavaScript
//var r=Math.random();
function d1(r) {
s = '-----\n';
s += '|' + (r>1?'o ':' ') + (r>3?'o':' ') + '|\n';
s += '|' + (r==6?'o o':(r%2==1?' o ':' ')) + '|\n';
s += '|' + (r>3?'o ':' ') + (r>1?'o':' ') + '|\n';
s += '-----';
return s;
}
function d2() {
r=(M=Math).floor(M.random()*6+1);
s=[[r>1,0,r>3],[r>5,r&1,r>5],[r>3,0,r>1]];
s=[[e?'o':' ' for each(e in t)].join('') for each(t in s)];
return('-----\n|'+s.join('|\n|')+'|\n-----');
}
function d3() {
r=1+Math.random()*6|0;
s='-----\n';
s+='|'+(r>1?'o ':' ')+(r>3?'o':' ')+'|\n';
s+='|'+(r-6?' ':'o');
return s+(r%2-1?' ':'o')+s.split('').reverse().join('');
}
function d4() {
r=Math.random()*6|0;
s='-----\n';
s+='|'+(r>0?'o ':' ')+(r>2?'o':' ')+'|\n';
s+='|'+(r-5?' ':'o');
return s+(r%2?' ':'o')+s.split('').reverse().join('');
}
var w = function(s){document.writeln("<pre>" + s + "</pre>")};
var m=d4();
w(m);
// golfed version 1
// r=(M=Math).floor(M.random()*6+1);alert('-----\n|'+[[e?'o':' ' for each(e in t)].join('') for each(t in [[r>1,0,r>3],[r>5,r&1,r>5],[r>3,0,r>1]])].join('|\n|')+'|\n-----');
// golfed version 2
// r=1+Math.random()*6|0;s='-----\n|'+(r>1?'o ':' ')+(r>3?'o':' ')+'|\n|'+(r-6?' ':'o');alert(s+(r%2-1?' ':'o')+s.split('').reverse().join(''))
// golfed version 3
// r=Math.random()*6|0;s='-----\n|'+(r>0?'o ':' ')+(r>2?'o':' ')+'|\n|'+(r-5?' ':'o');alert(s+(r%2?' ':'o')+s.split('').reverse().join(''))