
* 这是一个 JavaScript 代码片段速记器。
*
* 您可以输入一些 JavaScript 代码,然后右击或者从 执行 菜单中选择执行下列 *** 作:
* 1. 运行选中的代码。
* 2. 打开对象查看器查看运行结果。
* 3. 将运行结果作为注释添加到选中内容的后面显示。
*/
function getCard(){
return "abcdefghijklm".substr(parseInt(Math.random()*13),1)+"4321".substr(parseInt(Math.random()*4),1)
}
function sortCard(arr){
arr.sort()
return arr
}
function calCard(cardArr){
bArr =sortCard(cardArr)
var len = bArr.length
//下面利用array的属性来判断是否为顺子、同花、三张、对子等,用level值来表示
}
function compareCard(){
//比较每个人level值
}
//p表示人数,n表示牌数
function getHisCard(p,n){
if(p*n >52){
alert("牌不够分了")
return false
}
var person = [],
tstr = "",//用来保存已发的牌
i = 0,
tr = ""
while(p){
i = 0
person[p] = []
while(i<n){
tr = getCard()
if(tstr.indexOf(tr) === -1){
tstr = tstr+"/"+tr
person[p].push(tr)
i++
}
}
person[p]["level"] = calCard(person[p])
p--
}
return person
}
alert(getHisCard(2,3))
太晚了。。。要睡觉了,有时间再写吧:
把方法再分离下,然后封装成对象,就好用了
<!DOCTYPE HTML><html>
<head>
<title>Page Title</title>
<meta http-equiv="Content-Type" content="text/html charset=UTF-8" />
<script>
var arr=[],count=52
for(var i=1i<=counti++){
arr.push(i)
}
arr.sort(function(a,b){
var rand=Math.floor(Math.random()*3)
if(rand==0){
return 1
}else if(rand==1){
return -1
}else{
return 0
}
})
var players=[[],[],[],[]]
for(var i=0i<arr.lengthi++){
var p=players[i%players.length]
p.push(arr[i])
}
//1表示黑桃A,2表示黑桃2...,13表示黑桃K,
//14~26红桃
//27~39梅花
//40~52方块
var str="A,2,3,4,5,6,7,8,9,10,J,Q,K".split(/,/)
for(var i=0i<players.lengthi++){
document.write("玩家"+(i+1)+":&nbsp")
var pi=players[i]
pi.sort(function(x,y){
if(x>y){
return 1
}else if(x<y){
return -1
}else {
return 0
}
})
for(var j=0j<pi.lengthj++){
var num=pi[j]
var ok=num%13
ok=ok==0?13:ok
var what=str[ok-1]
var tp
if(num>=1&&num<=13){
tp="黑桃"
}else if(num>13&&num<27){
tp="红桃"
}else if(num>26&&num<40){
tp="梅花"
}else{
tp="方块"
}
document.write(tp+what+"&nbsp")
}
document.write("<br />")
}
</script>
</head>
<body>
</body>
</html>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)