2024春晚刘谦的魔术就是数组的操作。
8张牌,抽一张牌最后神奇找到另一半
javascript代码实现。感谢网友指导。
任意取牌刷新页面换牌
K_a,7_a,A_a,3_a,K_b,7_b,A_b,3_b
名字的长度3
7_a,A_a,3_a,K_b,7_b,A_b,3_b,K_a
A_a,3_a,K_b,7_b,A_b,3_b,K_a,7_a
3_a,K_b,7_b,A_b,3_b,K_a,7_a,A_a
最上面三张
3_a,K_b,7_b
最上面三张移动2位置
A_b,3_b,3_a,K_b,7_b,K_a,7_a,A_a
神秘牌【A_b】
3_b,3_a,K_b,7_b,K_a,7_a,A_a
南方人北方人拿1张
3_b
南方人北方人移动3位置
3_a,K_b,7_b,3_b,K_a,7_a,A_a
男生女生仍2张
7_b,3_b,K_a,7_a,A_a
见证奇迹的时刻移动7次
3_b,K_a,7_a,A_a,7_b
K_a,7_a,A_a,7_b,3_b
7_a,A_a,7_b,3_b,K_a
A_a,7_b,3_b,K_a,7_a
7_b,3_b,K_a,7_a,A_a
3_b,K_a,7_a,A_a,7_b
K_a,7_a,A_a,7_b,3_b
好运留下来移动K_a
移动4位置
7_a,A_a,7_b,3_b,K_a
烦恼丢出去1张
A_a,7_b,3_b,K_a
好运留下来移动A_a
移动3位置
7_b,3_b,K_a,A_a
烦恼丢出去1张
3_b,K_a,A_a
好运留下来移动3_b
移动2位置
K_a,A_a,3_b
烦恼丢出去1张
A_a,3_b
好运留下来移动A_a
移动1位置
3_b,A_a
烦恼丢出去1张
A_a
A_a
丢牌剩最后一张牌【A_a】
<html>
<body>
<script>
//var card=[
//"梅花A","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K",
//"方片A","方片2","方片3","方片4","方片5","方片6","方片7","方片8","方片9","方片10","方片J","方片Q","方片K",
//"红桃A","红桃2","红桃3","红桃4","红桃5","红桃6","红桃7","红桃8","红桃9","红桃10","红桃J","红桃Q","红桃K",
//"黑桃A","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",
//"大鬼","小鬼"
//];
var card=[
"A","2","3","4","5","6","7","8","9","10","J","Q","K"
];
//var cardNum = 54
var cardNum = 13
document.write("任意取牌刷新页面换牌</br>");
var cardTmp =[];
var tmp1 = sum (0,cardNum);
var tmp2 = sum (0,cardNum);
while(tmp2==tmp1){
tmp2 = sum (0,cardNum);
}
while(tmp2==tmp3){
tmp2 = sum (0,cardNum);
}
while(tmp2==tmp4){
tmp2 = sum (0,cardNum);
}
var tmp3 = sum (0,cardNum);
while(tmp3==tmp1){
tmp3 = sum (0,cardNum);
}
while(tmp3==tmp2){
tmp3 = sum (0,cardNum);
}
while(tmp3==tmp4){
tmp3 = sum (0,cardNum);
}
var tmp4 = sum (0,cardNum);
while(tmp4==tmp1){
tmp4 = sum (0,cardNum);
}
while(tmp4==tmp2){
tmp4 = sum (0,cardNum);
}
while(tmp4==tmp3){
tmp4 = sum (0,cardNum);
}
cardTmp.push(card[tmp1]+"_a");
cardTmp.push(card[tmp2]+"_a");
cardTmp.push(card[tmp3]+"_a");
cardTmp.push(card[tmp4]+"_a");
cardTmp.push(card[tmp1]+"_b");
cardTmp.push(card[tmp2]+"_b");
cardTmp.push(card[tmp3]+"_b");
cardTmp.push(card[tmp4]+"_b");
document.write(cardTmp+"</br>");
var name = sum (1,9);
document.write("名字的长度"+name+"</br>");
for (var i =0;i<name;i++){
var tmp = cardTmp[0];
cardTmp.splice(0,1);
cardTmp.push(tmp);
document.write(cardTmp+"</br>");
}
document.write("最上面三张"+"</br>");
var cardTop= cardTmp.splice(0,3);
document.write(cardTop+"</br>");
var move = sum (1,5);
document.write("最上面三张移动"+move+"位置"+"</br>");
var cardTmp1= cardTmp.splice(0,move);
cardTmp = cardTmp1.concat(cardTop).concat(cardTmp);
document.write(cardTmp+"</br>");
cardTmp1 = cardTmp.splice(0,1);
document.write("神秘牌【"+cardTmp1+"】</br>");
document.write(cardTmp+"</br>");
///
var position = sum(1,4);
document.write("南方人北方人拿"+position+"张</br>");
cardTop= cardTmp.splice(0,position);
document.write(cardTop+"</br>");
move = sum (1,4);
document.write("南方人北方人移动"+move+"位置"+"</br>");
cardTmp1= cardTmp.splice(0,move);
cardTmp = cardTmp1.concat(cardTop).concat(cardTmp);
document.write(cardTmp+"</br>");
var sex = sum(1,3);
document.write("男生女生仍"+sex+"张</br>");
cardTmp.splice(0,sex);
document.write(cardTmp+"</br>");
document.write("见证奇迹的时刻移动7次"+"</br>");
for (var i =0;i<7;i++){
var tmp = cardTmp[0];
cardTmp.splice(0,1);
cardTmp.push(tmp);
document.write(cardTmp+"</br>");
}
for(var i=0;i<cardTmp.length+3;i++){
///
var position = 1;
cardTop= cardTmp.splice(0,position);
document.write("好运留下来移动"+cardTop+"</br>");
move = cardTmp.length;
document.write("移动"+move+"位置"+"</br>");
cardTmp1= cardTmp.splice(0,move);
cardTmp = cardTmp1.concat(cardTop).concat(cardTmp);
document.write(cardTmp+"</br>");
document.write("烦恼丢出去"+position+"张</br>");
cardTmp.splice(0,1);
document.write(cardTmp+"</br>");
}
document.write(cardTmp+"</br>");
document.write("丢牌剩最后一张牌【"+cardTmp[cardTmp.length-1]+"】</br>");
function sum (m,n){
var num = Math.floor(Math.random()*(m - n) + n);
return num ;
}
</script>
</body>
</html>